2011-02-28 58 views
0

在我的环境文件,并设置:为什么设置action_controller.perform_caching = true会中断JavaScript?

config.action_controller.perform_caching = true 

导致的JavaScript不加载所有。

我使用的唯一javascript_include_tags有三种不同的视图文件,并宣布为:

= javascript_include_tag 'jquery.timeago', 'application', 'rails_custom', :cache => 'common' 
= javascript_include_tag 'application', 'rails_custom', :cache => 'common' 
= javascript_include_tag 'jquery.validity.pack', 'jquery.timeago', 'application', 'rails_custom', :cache => 'common' 

但是第一和第三个不会被包含在相同的请求。

在上面的环境中设置变量之后,在点击应用程序时,发出common.js请求并且服务器返回它,但是Firefox给出了一个语法错误,声称该文件的一个重要块是不是功能。

在什么情况下会导致缓存的JavaScript文件的结合变得无效?

+0

原来,“jquery.validity.pack”列入造成的JavaScript编译器在Firefox和Chrome至少问题。在'jquery.timeago'和'application'之前重新定位它似乎可以解决它。 – u2622 2011-03-01 15:37:44

回答

2

AFAIK你不能为不同的文件集使用相同的高速缓存名称。否则,它会继续得到覆盖在每个请求..

+0

感谢你 - 我没有意识到这一点,虽然这不是发生在这里的问题:((只有以上的其中一个包括标签只被处理) – u2622 2011-03-01 15:29:17

相关问题