为了使application.js更具动态性,我创建了javascript_controller并将public / application.js重命名为app / views / javascripts / application.js.erb
但<%= … %>
在javascript中看起来不太好,是否有更好的模板引擎用于此任务?
答案 0 :(得分:3)
如果您只是想寻找更好的模板引擎,为什么不试试haml?
在haml中,以下是erb javascript
function test(blah) {
alert("<%= @application_name %> says " + blah);
}
可以重写为:
function test(blah) {
alert("#{@application_name} says " + blah);
}
因为haml使用了我们都知道并喜欢的红宝石字符串插值。
PS:关于haml的一个好处是它可以和erb一起生活。只需安装gem,将application.erb.js的名称更改为application.haml.js,就可以全部设置。PPS:走这条路线也将打开在任何视图中使用haml的大门。当然,有些人确实喜欢ERb,但根据我的经验,使用haml的可读性更强,数据量更强,和更有趣。