Knockout 2:如何对可观察数组中的每个项进行计算值



我有一个可观察数组

this.item = ko.observableArray({
     tax: ko.observable(8.0);
     price: ko.observable(100.00);
     eachTotal:  ko.computed(function() {
           this.tax() * this.price();
     });
});

我得到错误说对象[窗口]没有税务方法。

我该怎么做呢?

我要做的是。

ko.utils.arrayForEach(myModel.item(), function(it) {
     it.eachTotal = ko.computed(function() {
        return it.tax() * it.price();
     });
});

我想知道这是否是最有效的方法?

这个可能不像你在javascript中期望的那样。它是调用者的上下文。
作为补救措施,通常在构造函数的开头为this设置self或_self。在knockout中再次查看示例,并注意self

或者如果arrayForEach像下划线一样工作,则存在第三个参数,即"this context"。

相关内容

  • 没有找到相关文章

最新更新