简单的Ember.js输入语法

时间:2017-06-22 04:54:08

标签: javascript ember.js

我发现在ember指南中有关如何在{{input}}帮助器上执行操作语法的冲突。我指的是key-presskey-up参数。

This section显示没有括号:

{{input value=firstName key-press="updateFirstName"}}

然而here(使用标题为“app / templates / components / list-filter.hbs”的代码片段),它确实使用括号:

{{input value=value key-up=(action 'handleFilterEntry') class="light" placeholder="Filter By City"}}

我不确定为什么API文档会省略括号,但示例会将它们放入其中。任何洞察力都值得赞赏

1 个答案:

答案 0 :(得分:1)

当您使用以下格式key-up=(action 'handleFilterEntry')时,将使用以下参数handleFilterEntryvalue调用jQueryEvent函数。

同样,

key-up='handleFilterEntry' ==> value,jQueryEvent

keyUp=(action 'handleFilterEntry') ==>只有jQueryEvent

keyUp='handleFilterEntry' ==>不要触发事件 - 这是错误的。它就像正常事件一样,所以你需要提供的功能不是字符串。

Event-Name被破译时,在输入帮助器内部,您将得到第一个参数值,然后是jQuery事件。如果它没有被标记为正常,那么你将单独获得jQuery Event参数。

Sample twiddle证明了这种行为。