Ruby on rails 是否可以让Rails资产管道在每个请求上编译Coffeescript?
我正在使用Coffeescript构建一个JS小部件。我正在玩一些技巧,以便在编译时将CSS/SCSS和HTML/HAML模板放入JS小部件:Ruby on rails 是否可以让Rails资产管道在每个请求上编译Coffeescript?,ruby-on-rails,coffeescript,asset-pipeline,Ruby On Rails,Coffeescript,Asset Pipeline,我正在使用Coffeescript构建一个JS小部件。我正在玩一些技巧,以便在编译时将CSS/SCSS和HTML/HAML模板放入JS小部件: # widget.js.coffee.erb class Widget constructor: (options) -> @template = <%= Haml::Engine.new( File.read( File.expand_path("../../templates/widget.html.haml",
# widget.js.coffee.erb
class Widget
constructor: (options) ->
@template = <%= Haml::Engine.new(
File.read(
File.expand_path("../../templates/widget.html.haml", __FILE__))).
render.to_json %>
@css = <%= Sass.compile_file(
File.expand_path("../../stylesheets/widget.css.scss", __FILE__)).
to_json %>
#widget.js.coffee.erb
类小部件
构造函数:(选项)->
@模板=
@css=
问题是,当我更改HTML或CSS时,Rails没有在开发中重新编译Coffeescript,因为Coffeescript文件没有更改。我需要进行愚蠢的空白更改,以迫使它重新编译内容。这越来越烦人了:-)
关于如何强制资产管道在每次请求时编译某些文件,您有什么想法吗?明白了。链轮有一个指令。将以下行添加到my widget.js.coffee.erb解决了此问题:
# coffee.js.coffee.erb
#= depend_on '../templates/widget.html.haml'
#= depend_on '../stylesheets/widget.css.scss'
class Widget
...