javascript中每行的值相同

时间:2013-01-07 11:27:19

标签: javascript knockout.js

我在http://jsfiddle.net/TQXja/14/

中创建了一个表格

我的需求是用户忙一次是真的,那么对于该用户的所有任务应该是真的。但它总是采用1行值,因为我在第24行映射数组,var list我是映射数组以获得不同的用户列表。

var list = ko.utils.arrayMap(self.tasks(), function (item) {
    if (distinctUsers.indexOf("|" + item.members) == -1) 
        distinctUsers += "|" + item.members;
        return item;
    }
});

1 个答案:

答案 0 :(得分:1)

我会重构您的代码,而是拥有一个包含值isBusy的User对象。在这个User对象中有一个observableArray of Goals,如下所示:

function User(name, goals, isBusy, userPresence) {
    self.name = ko.observable(name);
    self.goals = ko.observableArray(goals);
    self.userPresence = userPresence;
}

function Goal(id, isPublic, note) {
    var self = this;

    self.goalId = ko.observable(id);
    self.isPublic = ko.observable(isPublic);
    self.note = ko.observable(note);
}