[目前,我有2种布局分别是'devise'(针对未认证的页面)和'application'(针对登录后的所有页面)。由于某些原因,登录后执行redirect_to root_url
时会加载仪表板,但不会加载任何CSS和jQuery。刷新页面后,一切正常。我不确定是什么原因造成的。任何帮助,将不胜感激。预先感谢。
这是我的文件的布局。
1。 devise.html.erb
<head>
<title></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- Main css styles -->
<%= stylesheet_link_tag 'devise' %>
<!-- Main javascript files -->
<%= javascript_include_tag 'devise' %>
</head>
2。 application.html.erb
<head>
<title></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- <meta name="viewport" content="width=device-width, initial-scale=1.0"> -->
<!-- Main css styles -->
<%= stylesheet_link_tag 'application'%>
<%= javascript_include_tag 'application' %>
</head>
Turbolinks在不同模板的JavaScript和CSS保持一致时效果最佳。如果必须在布局之间显着更改脚本和样式,建议您将data-turbolinks-track="reload"
添加到资产标签:
<head>
<title></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- Main css styles -->
<%= stylesheet_link_tag 'devise', 'data-turbolinks-track': 'reload' %>
<!-- Main javascript files -->
<%= javascript_include_tag 'devise', 'data-turbolinks-track': 'reload' %>
</head>
<head>
<title></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<!-- <meta name="viewport" content="width=device-width, initial-scale=1.0"> -->
<!-- Main css styles -->
<%= stylesheet_link_tag 'application', 'data-turbolinks-track': 'reload' %>
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
</head>
当Turbolinks注意到新页面和上一页之间存在差异时,它将重新加载该页面。这对于确保用户下载最新部署的资产也很重要。