这可能是非常基本的,但我似乎无法弄明白。问题出在
我有一个带有可观察数组'self.product'的视图模型,并希望从嵌套模型访问它,如下所示。当我运行这个时,我得到一个产品不存在的错误。我没有包含代码,但有一个ajax调用获取数据并将其推送到'product'。同时在函数'test'上使用单击绑定会打印该值。
我虽然可能是'self'的一个范围问题,但是因为我在标记中使用foreach绑定中的'product'数组,所以我不能只将self.product ...更改为var产品。我怎么能做到这一点?
var viewModel = function () {
var self = this;
self.product = ko.observableArray([]);
var orderItem = function (data) {
var self = this;
self.PlayDuration = ko.computed(function () {
var foo = self.product()[0].something();
return foo;
});
}
self.updateTotals = function () {
console.log(self.product()[0].something());
}
});
答案 0 :(得分:1)
var root = this;
将该行添加到最外层的viewmodel并在内部视图模型中使用它。