【发布时间】:2022-08-10 17:05:14
【问题描述】:
由于某种未知原因,当我在浏览器中按 F5 时,Rails 7(开发环境)不会自动获取 application.js 中的更改。位置application.js 是默认位置。我正在使用几乎默认的设置。
当我运行服务器时,它会从某个缓存版本中获取 javascript。我需要明确地rails assets:recompile 使其工作。
Importmap 看起来很标准:
# Pin npm packages by running ./bin/importmap
pin \"application\", preload: true
...
布局文件似乎也很标准:
<!DOCTYPE html>
<html>
<head>
<title>Whatever</title>
<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">
<link rel=\"icon\" href=\"<%= image_path(\'favicon.svg\') %>\">
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<%= stylesheet_link_tag \"application\", \"data-turbo-track\": \"reload\" %>
<%= javascript_importmap_tags %>
</head>
...
我试图在我的development.rb 中设置config.importmap.sweep_cache = true(根据importmap docs),但似乎没有效果。
在这一点上,我非常绝望,无法理解为什么我需要在我的开发环境上rails assets:precompile。
此外,我没有在 \"localhost\" 域上运行我的应用程序,它位于类似 dev.server-somewhere.com 的位置(因此可以从任何地方访问),并带有 SSH 重定向,类似于 ngrok。不确定这是否是问题的原因。
澄清一下:我正在寻找没有实时刷新功能,只需使用 F5 页面刷新的标准方法即可。
-
您是使用严格的 importmaps 来处理 javascript 还是使用 jsbundling 或 webpack?
-
仅导入映射
标签: ruby-on-rails ruby-on-rails-7