0

为了使 application.js 更加动态,我创建了 javascript_controller 并将 public/application.js 重命名为 app/views/javascripts/application.js.erb

但是<%= … %>在 javascript 中看起来不太好,是否有更好的模板引擎来完成这项任务?

4

1 回答 1

3

如果您只是在寻找更好的模板引擎,为什么不试试haml呢?

在haml中,以下erb javascript

function test(blah) {
  alert("<%= @application_name %> says " + blah);
}

可以重写为:

function test(blah) {
  alert("#{@application_name} says " + blah);
}

自从 haml 使用我们都熟悉和喜爱的 ruby​​ 字符串插值以来。

PS:haml 的优点之一是它可以与 erb 并存。只需安装 gem,将 application.erb.js 的名称更改为 application.haml.js,就可以了。

PPS:走这条路也将为您在任何观点中使用haml打开大门。诚然,有些人确实喜欢 ERb,但根据我的经验,使用 haml 的可读性乐趣要高出几个数量级。

于 2010-01-13T18:55:23.670 回答