简单 Ember.js 输入语法

Simple Ember.js Input Syntax

我发现 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 文档省略了括号,但示例将它们放入。任何见解表示赞赏

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

同样,

key-up='handleFilterEntry' ==> 值,jQuery事件

keyUp=(action 'handleFilterEntry') ==> 只有 jQuery事件

keyUp='handleFilterEntry' ==> 不会触发事件 - 这是错误的。它就像正常事件,因此您需要提供函数而不是字符串。

Event-Name 被破折号化时,在输入助手内部,您将获得第一个参数值,然后是 jQuery 事件。如果它没有破折号那么它是正常的事情所以你将单独获得 jQuery 事件参数。

Sample twiddle 证明了这种行为。