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

标签 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}}

这是相应 View 的代码:

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

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

最佳答案

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

当我尝试在那里重现错误时,我意识到了问题所在,并且它与 ember 无关。

id="dropdown-1"的 div 是从另一个链接调用的,并且它始终具有相同的 id,因此其用户绑定(bind)始终具有相同的操作。

现在我已将 Id 绑定(bind)到用户对象,并且它工作得很好。

关于Ember.js 绑定(bind)数组元素来查看,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13471473/

相关文章:

javascript - 如何使用模板中的数据显示 Google map

javascript - Ember.js:设置一个值为嵌套对象的属性

ember.js - 如何保持特定 View ember 呈现?

ember.js - 从 View 访问模型关联

javascript - Ember Data 没有看到我的本地商店

RenderBuffer.string() 中的 Ember.js 性能瓶颈

ember.js - ember-data fixture data "Cannot read property ' promise' of undefined"

ruby-on-rails - Ember.js + Handlebars 自定义助手

JavaScript:先按数字然后按字母对数组字符串进行排序

javascript - 观察数组 Controller 中 ItemController 的变化