我正在ROR5上构建一个Web应用程序,并且布局/设计全部完成,CSS/JS文件已完成。但是,当我打开应用程序,点击一个链接,浏览网站,CSS无法加载。更具体地说,CSS全部搞砸了。例如,假设我从'首页' - >'页面A',然后如果我再次退格到'首页'(或点击徽标导航到'主页'),则'主页'页面将会混乱。只有当我刷新的页面,我才会得到正确的显示。Ruby on Rails与Turbolinks的CSS/JS错误
起初我还以为这是一个缓存的问题,但很快就发现,这条线是造成问题:
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
当我删除这条线,显示问题已经不再存在。但是,所有JS效果/基于JS的插件都无法工作。我有一个文本编辑器,几个jQuery动画和标签导航,当我删除该行时,这些都不起作用。 +当然,我并不是简单地删除该行,而是试着简单地禁用turbolinks: <%= javascript_include_tag'application'%> 并从我的Gemfile中删除turbolinks。这也没有奏效。
我的Gemfile包括: 宝石 'turbolinks', '〜> 5' 宝石 '咖啡轨', '〜> 4.2' 宝石 'jQuery的轨道'
,其余宝石我前端的所有标准宝石(bootstrap,SASS,字体真棒等)。
我的application.js看起来是这样的:
//= require rails-ujs
//= require jquery
//= require jquery_ujs
//= require tinymce
//= require turbolinks
//= require bootstrap-sprockets
//= require_tree .
以供参考,我application.html.erb包含一个类似如下:
<head>
<title>..</title>
<%= csrf_meta_tags %>
<%= stylesheet_link_tag 'application', media: 'all' %>
<%= stylesheet_link_tag params[:controller] %>
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Adobe Typekit Scripts -->
<script src="https://use.typekit.net/ovy4zfg.js"></script>
<script>try{Typekit.load({ async: true });}catch(e){}</script>
</head>
可能是什么问题?谢谢。
谢谢!我有很多样式的工作,所以我使用了替代方法,并添加了data-turbolinks-track =“reload”到我的CSS链接标签,完美地完成了这项工作! :) – sofarsophie