基于环境在Rails中加载不同的Javascript文件
Loading different Javascript files in Rails based on environment
在Rails 3.2中,根据您的环境(生产或开发)加载不同的Javascript文件的最佳方式是什么?我正在尝试创建一个全局(是的,全局)javascript变量,它应该根据环境而有所不同。该变量由JQuery调用,但我编写的其他一些javascript文件需要该变量。
最好是根据我们运行的环境生成一个动态的application.js.erb
,还是我遗漏了什么?
感谢
在Rails 3.2中,根据您的环境(生产或开发)加载不同的JavaScript文件的最佳方式是什么?
在应用程序布局中,您可以添加特定于环境的js文件,如下所示:
<% if Rails.env.development? %>
<%= javascript_include_tag 'development.js' %>
<% end %>
或者更清洁的方式:
<% javascript_include_file "#{RAILS_ENV}.js" %>
您可以通过创建一个特定的js文件并在application.js.erb:中要求它,以另一种方式实现相同的结果
env_config.js.erb
<%= Rails.env.production? ? 'productionConf();' : 'regularConf();' %>
application.js.erb
//= require env_config
//= require jquery
...
不加载不同的js文件,而是根据不同的环境设置一个变量
我建议使用gon。这是将rails变量放入js的一种简单方法。
设置后,在控制器中执行以下操作:
before_filter :set_gon_env
def set_gon_env
gon.rails_env = ENV['RAILS_ENV'] == 'development' ? "dev" : "not dev"
end
相关文章:
- 加载文件,然后调用回调函数
- 根据浏览器大小加载文件
- 错误:无法在“XMLHttpRequest”上执行“发送”:无法加载“文件”:AngularJS SPA
- Ajax在mootools中使用来加载文件
- 加载文件时xmlhttp不稳定,如何修复
- Require.js何时加载文件
- 有没有办法在不打包的情况下在 nodejs 上加载文件
- 如何通过从浏览器 js 控制台触发的 require.js 重新加载文件
- 使用jQuery加载文件,计算类的元素并设置间隔比率
- 如何在 AngularJS UI 路由器中从bower_component加载文件
- JavaScript 本地应用程序保存/加载文件
- 如何在特定页面上加载文件
- 内容安全策略不从本地主机加载文件
- Javascript 无法从其他目录加载文件
- Extjs MVC 文件夹结构无法加载文件
- 节点.js - 在运行时加载文件
- nodejs加载文件
- Javascript/AAJAX仅重新加载文件“;onchange”;
- 加载文件,并在特定行之后删除javascript/jquery中的所有剩余行
- 是否可以在非服务页面上使用JS/HTML5 FileReader加载文件