Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 预编译js.erb文件或在不预编译的情况下加载它_Javascript_Ruby On Rails_Ruby On Rails 3 - Fatal编程技术网

Javascript 预编译js.erb文件或在不预编译的情况下加载它

Javascript 预编译js.erb文件或在不预编译的情况下加载它,javascript,ruby-on-rails,ruby-on-rails-3,Javascript,Ruby On Rails,Ruby On Rails 3,我有一个愚蠢的问题:我有一个javascript文件,其中包含一些从rails“获取”的javascript常量(用于所有javascript代码) 代码很简单: var CrossJavascriptSettings = { desktop_columns: <%= Rails.configuration.extjs_desktop[:icon_columns] %>, recaptcha_public_key: '<%= Recaptcha.configuratio

我有一个愚蠢的问题:我有一个javascript文件,其中包含一些从rails“获取”的javascript常量(用于所有javascript代码)

代码很简单:

var CrossJavascriptSettings = {
  desktop_columns: <%= Rails.configuration.extjs_desktop[:icon_columns] %>,
  recaptcha_public_key: '<%= Recaptcha.configuration.public_key %>',
  tasks_icon_image: '<%= image_path('icons/Clock.png') %>',
  no_image: '<%= image_path('icons/Delete.png') %>',
  loading_image: '<%= image_path('ext-icons/loading.gif') %>',

  loading_image_preloaded: new Image().src = '<%= image_path('ext-icons/loading.gif') %>',
  no_image_preloaded: new Image().src = '<%= image_path('icons/Delete.png') %>',
  tasks_icon_image_preloaded: new Image().src = '<%= image_path('icons/Clock.png') %>',

  available_roles: <%= Rails.configuration.available_roles.each_with_index.collect { |element, index| [index, element] }.as_json %>,

  organizations_logo_path: '/assets/organizations/logos/'
};
var CrossJavascriptSettings={
桌面_列:,
重述公钥:“”,
任务\u图标\u图像:“”,
没有图像:“”,
正在加载图像:“”,
正在加载\u图像\u预加载:new image().src='',
没有预加载图像:new image().src='',
任务\u图标\u图像\u预加载:new image().src='',
可用的_角色:,
组织标识路径:'/assets/organizations/logo/'
};
问题是我的文件没有被预编译,这很奇怪,因为在文件中,我使用的只是配置选项,没有数据库或类似的东西


所以我的问题是,我如何解决这个问题?有没有办法强制使用所需常量编译该文件,或者有没有办法在不编译的情况下加载该文件?

以“另一种方式”解决。你不能这样做,你需要在application.html.erb中移动这些常量或通过AJAX加载它们。

运行“rake assets:precompile”将我的js.erb预编译到应用程序中-…js你在使用rails 4吗?这可能就是不同之处。