Javascript 如何知道observableArray中的可观测项何时发生变化(knockoutJS)?

Javascript 如何知道observableArray中的可观测项何时发生变化(knockoutJS)?,javascript,knockout.js,knockout-2.0,Javascript,Knockout.js,Knockout 2.0,我有一个我创建的数据结构的observableArray,在这个数据结构中,其中一个字段是observable。我如何跟踪内部可观测值(数据结构内部)的变化?我尝试订阅内部变量,但没有成功。我设置了一个小提琴来模拟您的情况。它由一个视图模型组成,该模型具有一个ko.observableARay,数组中的每个项都包含ko.observableArray属性。假设已经定义了在数据结构中创建对象的函数,则可以在每个对象中放置subscribe函数 这是我的建议 守则: function luggage

我有一个我创建的数据结构的observableArray,在这个数据结构中,其中一个字段是observable。我如何跟踪内部可观测值(数据结构内部)的变化?我尝试订阅内部变量,但没有成功。

我设置了一个小提琴来模拟您的情况。它由一个视图模型组成,该模型具有一个
ko.observableARay
,数组中的每个项都包含
ko.observableArray
属性。假设已经定义了在数据结构中创建对象的函数,则可以在每个对象中放置
subscribe
函数

这是我的建议

守则:

function luggage(data) {
    var self = this;
    this.id = ko.observable(data.id);
    this.color = ko.observable(data.color);
    this.color.subscribe(function (newvalue) {
        console.log(self.id() + ' changed!');
    });
}

function vm() {
    this.train = ko.observableArray():
}

提供一些代码,可能还有一把小提琴来演示您创建的结构。如果您订阅了它并将其正确绑定到视图,它应该会工作。如果您说明为什么要订阅存储在ObservalArray中的observable,以便我们可以想出其他解决方案,这也会非常有帮助。如果您从computed访问内部observable,那么computed将解析链中的所有observable