0

我很好奇 Rails 包含 .js 文件的方式。除了资产管道,我对存储在 .js 文件中的 .js 文件感到好奇view。例如,如果您想将 ajax 调用应用于调用likein的操作PostsController,您只需将相关的 ajax 代码放在like.js.erb帖子视图文件夹中。然后,当用户调用 action 时,javascript 会自动触发like

我的问题是

  1. 调用动作时自动调用名称与某些动作匹配的javascript文件是否正确?
  2. 如果我想在某个视图中包含一个不对应任何操作的 javascript 文件,我该怎么办?只需将其包含在应用程序清单中?更具体地说,我现在有tag-autocomplete.js.erbviews/post我是否将其移动到assets文件夹并从application.css?

谢谢你。

4

1 回答 1

0
  1. 是的,虽然我看不出如果你同时拥有like.js.erb 和like.html.erb 会发生什么。似乎会选择其中一个,而且可能是任意的。

  2. 在这种情况下,我通常会在脚本标记中内联 javascript。如果它真的只会在那个视图中使用,那是合理的。另一方面,application.js 被缓存了,这样可以节省带宽来放任何你可以放在那里的东西。但是,由于您询问的是涉及模板的事情,所以我认为缓存是不可取的。对此,我说你应该尽量减少在 JS 中使用模板。有时它是有道理的,但要小心。

(仅供参考:是定义相关功能核心的地方。)

于 2012-12-29T23:07:10.160 回答