计算的observable作为observableArray的成员

时间:2013-05-06 14:25:08

标签: knockout.js knockout-mapping-plugin

抱歉,我是Knockout的新手。我试图将一个compute observable作为成员放在observableArray上。 像这样:

var viewModel = {
       data: ko.observableArray([
            [a, b, ko.computed(function () {return (a+b);})],
            [c, d, ko.computed(function () { return (c + d); })],
        ]),
    };

代码在语法上不正确,我只是试图提出我的想法。在上面的代码中,我希望任何数组的第3个成员进行一些计算并返回结果。

任何想法都会受到赞赏。

1 个答案:

答案 0 :(得分:1)

根据您的回复,我制作了一个新代码段。

 var viewModel = {
    data: ko.observableArray([
        [10, 20],
        [60, 40]
    ])
};
var ar = viewModel.data();
for (var index = 0; index < ar.length; index++) {
    var item = ar[index];
    item[0] = ko.observable(item[0]);
    item[1] = ko.observable(item[1]);        
    item[2] = ko.computed(function () {
       return  item[0]() + item[1]();
    });
}


ko.applyBindings(viewModel);

<强> See the new fiddle

我希望它有所帮助