0

我在http://jsfiddle.net/TQXja/14/中创建了一张表

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

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

1 回答 1

1

我将重组您的代码,并使用一个保存值 isBusy 的用户对象。在这个 User 对象中有一个 observableArray 的目标,如下所示:

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);
}
于 2013-01-07T12:35:29.163 回答