我正在尝试做什么(我不确定是否可行)是使用UglifierJS使用其AST'mangle'选项对象预处理JS文件。您可以将一个选项{定义:{ DEVMODE :true}}传递给UglifyJS:https://github.com/mishoo/UglifyJS#use-as-a-code-pre-processor
使用Rails的Uglify GEM基本上使用相同的,“定义”不应该是GEM实现的一部分,但我硬编码它来改变宝石的几行,所以它将作为一个包括在内更多选择。
无论如何,关键是我如何在开发中使用预处理方法,因此资产管道以这种方式提供JS文件?
答案 0 :(得分:1)
我添加了对Uglifier的定义的支持。它尚未发布,但您可以根据git上的最新版本使用。
的Gemfile:
gem 'uglifier', :git => 'https://github.com/lautis/uglifier.git'
使用已使用的定义实例化Uglifier,例如
Uglifier.new(:define => {"DEVMODE" => true})
或者,在使用资产管道时,您可以将erb预处理器与JS代码一起使用。将您的文件命名为something.js.erb并编写类似
的代码<% if Rails.env.development? %>
console.log(debug)
<% end %>