Knockout.js KnockoutJS-check和computed函数上的复选框

Knockout.js KnockoutJS-check和computed函数上的复选框,knockout.js,Knockout.js,我对KnockoutJS非常陌生,我有一个“简单”的问题-每次我点击复选框或标签时,我都会在控制台中看到1。但是,changeCheck如何“知道”何时应该调用它呢 只是返回self.check()通知knockoutJS调用changeCheck?我不明白。谁能给我解释一下吗 self.check = ko.observable(false); self.changeCheck = ko.computed(function () { console.log(1); retur

我对
KnockoutJS
非常陌生,我有一个“简单”的问题-每次我点击
复选框
标签
时,我都会在控制台中看到
1
。但是,
changeCheck
如何“知道”何时应该调用它呢

只是
返回self.check()check
更改时,code>通知
knockoutJS
调用
changeCheck
?我不明白。谁能给我解释一下吗

self.check = ko.observable(false);

self.changeCheck = ko.computed(function () {
    console.log(1);
    return self.check();
});

<input type="checkbox" id="myCB" data-bind="checked: check" />
<label for="myCB">lorem</label>
self.check=ko.可观察(假);
self.changeCheck=ko.computed(函数(){
控制台日志(1);
返回self.check();
});
洛勒姆

您自己回答问题的尝试是正确的。Knockout将分析您计算的可观察对象,以确定访问哪些其他可观察对象。所有这些可观测值都将被标记为计算可观测值的依赖项(换句话说,计算可观测值将订阅可观测值的变化)。每当可观察到的值发生变化时,它会将变化的值通知任何订户。对于计算的观测值,这意味着将进行重新计算。我刚才输入的很多内容,以及许多其他有用的信息都在Knockout的文档中提供,这些文档是关于计算的可观测值的