导轨资产:主页不加载资产

导轨资产:主页不加载资产

问题描述:

我有一个金田奇怪的问题。在主页上(https://seekthelordca.org/)一切(资产)正确加载(图片1)。然后,如果我碰到导航栏的其他链接('期刊'),然后点击'主页'返回主页,则资产(css)无法正确加载(图2)。我有2个模板布局;首页1个,其余1个。导轨资产:主页不加载资产

我打电话给我的样式表是这样的:

<%= stylesheet_link_tag 'bootstrap_3_2.css', 'https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css', 'style.min.css','responsive.min.css','demo.css', media: 'all'%> 

但什么的似乎不可思议的是当我查看网页的源,然后单击每一个CSS链接一切加载上。要的其他链接时,点击回“家” enter image description here

感谢

enter image description here

结果,这是一个有趣的2分钟谜。

请参阅下面的网络日志。这是第一次加载: enter image description here

,然后在另一个链接点击,然后再返回,这是日志: enter image description here

那么,有什么区别?那么首先要注意的事情是,为正在加载的CSS,并以相同的顺序相同的4个JS文件:

  • JQuery的v1.11.0预
  • 引导
  • 砌体
  • 演示

但是,对于来自站点上另一个链接的负载,您将加载另一个不同版本(2.1.3)的JQuery。你还有另外一个正在使用这个JQuery加载的JS,它加载了Sizzle(它被称为bookstore.js,其中之一很可能会搞乱你的布局,我会怀疑它是JQuery的混合版本)

由于意见建议的范围内,加入这一行应该防止资产被包含在这一个其他页面:

添加到配置/环境/ production.rb: config.action_view.cache_template_loading = false

+0

感谢@ABrowne检查了所以我改变了jquery对于两个布局都是一样的,但是'jquery.min.js'在访问主页时没有加载。 –

+0

我看你已经改变了他们,这很好。但是,您仍然通过路由在页面上加载jQuery两次。请问bookstore.js的目的是什么?只要您导航到另一个页面并在返回主页时粘贴到标题,它似乎就会包含在内。如果您查看主页的来源,则没有提及,但是如果您检查该页面,则可以清楚地看到它包含在标题中。请仔细阅读以确保您仅在需要的页面上包含该JavaScript:http://railsapps.github.io/rails-javascript-include-external.html – ABrowne

+0

感谢ABrown!e现在可以使用。在这篇文章http://*.com/a/13975092/2581266之后,你可以在config/environments/production中添加你的答案来放置'config.action_view.cache_template_loading = false'。rb',这样资产将在不同的布局之间被清除 –