Knockout.js 淘汰通用订阅

Knockout.js 淘汰通用订阅,knockout.js,Knockout.js,如果网页上的10个观察值中有任何一个发生变化,我希望得到通知。我可以通过单独订阅每一个(编写相同的代码10次)来实现这一点。有没有一种通用的方法,用更少的代码 pom这里是一个使用计算值的解决方案: var Model = function () { var self = this; self.a1 = ko.observable(1); self.a2 = ko.observable(1); self.a3 = ko.observable(1); sel

如果网页上的10个观察值中有任何一个发生变化,我希望得到通知。我可以通过单独订阅每一个(编写相同的代码10次)来实现这一点。有没有一种通用的方法,用更少的代码


pom这里是一个使用计算值的解决方案:

var Model = function () {
    var self = this;
    self.a1 = ko.observable(1);
    self.a2 = ko.observable(1);
    self.a3 = ko.observable(1);
    self.all = ko.computed(function () {
        self.a1();self.a2();self.a3();
    }, this);
    self.all.subscribe(function () {
         console.log("something changed");  
    });
};
ko.applyBindings(new Model());

完美的谢谢虽然我需要在那个里添加一个内部计数器,以便在应用程序启动时进行节流,因为它会在用户进行更改之前触发几次。也许可以提供帮助。这也可能对您有所帮助:。它描述了如何使用
ko.toJS
/
ko.toJSON
获取某个根对象下所有可观察对象的依赖关系