如果这是一个菜鸟问题,我很抱歉,我是Ember.js的新手并试图解决一些问题.在Ember.js中,假设我有一个数组控制器中的对象列表并为每个特定对象呈现视图,如果用户单击属于特定对象的DOM元素,如何确定哪个对象的元素被单击?
例
ul#mainChat
{{#each chat in App.chatController}}
{{#view App.MainChatView tagName="li"}}
li | Example
{{/view}}
{{/each}}
Run Code Online (Sandbox Code Playgroud)
如果我在聊天控制器阵列中有5个对象并且生成了5个li,则用户单击一个,我如何确定属于哪个对象.
谢谢!
您必须为该元素包含一个操作,并将操作传递给上下文,您可以通过目标中的操作event.context访问该上下文.
例如.
{{#each item in items}}
<li {{action viewItem item target="view"}}>{{name}}</li>
{{/each}}
Run Code Online (Sandbox Code Playgroud)
然后在你的视图中(或者你设置动作目标的地方,它取决于你正在做什么)你将拥有:
viewItem: function(event) {
var item;
item = event.context;
//do what you want with the item
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1231 次 |
| 最近记录: |