Ember.js绑定数组元素来查看

时间:2012-11-20 10:41:41

标签: ember.js

我在ember.js模板中有以下代码。 userController是一个ArrayController,其中包含多个“用户”。

{{#each CollaborativeEditor.userController}}
    {{#view CollaborativeEditor.OnlineUserView userBinding="this"}}
        <div class="avatar">
            <div class="avatar_name">{{name}}</div>
            <div class="avatar_status">{{status}}</div>
        </div>
        <div id="dropdown-1">
            <ul>
                <li><a href="#" {{action startChat target="onlineUser"}}>Talk to </a></li>
            </ul>
        </div>
    {{/view}}
{{/each}}

这是相应视图的代码:

CollaborativeEditor.OnlineUserView = Ember.View.extend({
    tagName: 'li',
    startChat : function() {
        console.log(this.get('user'));
    }       
});

虽然为每个用​​户正确设置了名称和状态,但是附加到链接的startChat操作始终会将该数组的第一个用户打印到控制台。 绑定有什么问题?

1 个答案:

答案 0 :(得分:2)

非常感谢您的要求,将其放入jsfiddle!

当我试图在那里重现错误时,我意识到了这个问题,它与ember无关。

id =“dropdown-1”的div是从另一个链接调用的,它始终是相同的id,因此它的用户绑定始终是相同的动作。

现在我已将Id绑定到用户对象,并且它完美运行。