我正在使用browserify-rails并且我正在尝试让 sprockets 预处理包含 sprockets 指令的文件,这样当我require()
使用 browserify 时,它将包含生成的 JavaScript。
sprockets 指令尝试包含 gem js-routes的输出,以允许我从客户端访问 Rails 路由。
这是我的设置(内app/assets/javascripts
):
system/
rails_routes.js
application.js
application.js
是主文件,它运行应用程序的其余部分。我希望能够做类似的事情
var rr = require("./system/rails_routes.js");
在其中,并获得对路线对象的访问权限。
内system/react_routes.js
,我有以下内容:
//= require js-routes
console.log("Does this work?");
(顺便说一句,我配置js-routes
为将输出放在一个名为 的对象中module.exports
,以符合 CommonJS 模型,如railsware/js-routes#121中所述)
唯一的问题是,当我查看生成的捆绑包时,sprockets 指令仍然存在并且没有展开。
console.log
调用也在那里,并在我模块时执行require()
。
有没有办法让它工作?在将文件与 browserify-rails 捆绑之前,让 sprockets 预处理文件的正确方法是什么?