0

这可能是非常基本的,但我似乎无法弄清楚。问题来了

我有一个带有可观察数组“self.product”的视图模型,并希望从嵌套模型中访问它,如下所示。当我运行它时,我得到一个产品不存在的错误。我没有包含代码,但是有一个 ajax 调用可以获取数据并将其推送到“产品”。同样在函数“test”上使用点击绑定会打印该值。

我虽然这可能是“自我”的范围问题,但由于我在标记中的 foreach 绑定中使用了“产品”数组,所以我不能只将 self.product... 更改为 var product。我怎么能做到这一点?

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());
        }
});
4

1 回答 1

1
var root = this;

将该行添加到最外面的视图模型并在内部视图模型中使用它。

于 2013-06-27T23:00:54.577 回答