我有一个简单的jquery-(ujs)脚本,该脚本在页面的不同字段中添加了一些值。(没有AJAX)
这在Rails 3.2开发模式下运行良好,但是根本不在生产模式下运行。
application.js文件是:
//= require jquery
//= require jquery_ujs
//= require_tree .
(并且我在这个目录中有我的adder_func.js文件)..
我在Gemfile中有“ jquery-rails”-完成了捆绑包更新。
rake assets:clean
rake assets:precompile
但是,在生产模式下,编辑字段不会更新相关字段..
同一应用程序在开发模式下运行
rails s
本地主机:3000 / pagexxx和javascript作品..
使用phusion-passenger-apache2 localhost:80 / pagexxx,除了javacscript之外,其他一切都正常。
样式表和图像等都是从单个文件“ application.css”提供的,其中有一个“ applicaton.js”,其中包含了我的函数。使用javascript在控制台上没有错误。这是一个资产问题。.但是我看不到我在做什么错。
问题是javascript目录中的js库文件错误。我在javascripts目录中有4个js库..prototype,dragdrop,effects和control.js-我不需要它们,但是自从Rails 2.3天以来它们就在那儿,而且我从不费心去掉它们。
我删除了它们,一切正常。
有两种可能-一种是在带有jquery ..的库中有一个“冲突的”函数名,或者是缺少一个语法错误。我认为是后者。
在开发模式下单独提供文件时,除非使用脚本,否则损坏的文件不会影响任何内容。但是,当链轮将它们组合到单个application.js文件中时,您可能会遇到这种问题。
资产预编译不会针对此类冲突或问题发出警告/错误消息,这简直太可惜了。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句