【问题标题】:Using sprockets outside of Rails -- directives not working在 Rails 之外使用链轮——指令不起作用
【发布时间】:2012-02-27 17:25:01
【问题描述】:

我正在尝试将 Sprockets 与 Rails 之外的 CoffeeScript 文件一起使用,但未处理指令:

# app.js.coffee
#= require models/user
# some other code...

现在,该文件被处理:

require 'sprockets'
root = 'some path...'
env = Sprockets::Environment.new(root)

env.append_path(File.join(root))
env.append_path(File.join(root, 'models'))

compiler = Sprockets::StaticCompiler.new(env.index,
                                         'output',
                                         %w(app.js.coffee),
                                         :digest => nil,
                                         :manifest => false)
compiler.compile

来自app.js.coffee 的代码确实被编译,但来自models/user 的内容不包括在内(并且不会引发错误)。

这是 Sprockets 2.0.3 的版本。

有什么想法吗?

【问题讨论】:

  • 顺便说一句,我从actionpack/lib/sprockets/assets.rake中提取了该代码。
  • 既然您已经成功地在轨道外使用链轮,您介意帮我弄清楚吗? stackoverflow.com/q/11267677/48523

标签: ruby coffeescript sprockets


【解决方案1】:

天哪,在深入研究源代码一个小时左右后,我发现 Sprockets 只会听取文件顶部的指令,文档中也说明了这一事实,但我不知何故错过了......

【讨论】:

  • 是的,我正在寻找一种不需要在文件顶部的方法。运气好吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-07
  • 1970-01-01
相关资源
最近更新 更多