Knockout.js 可观察的,通知新订户其当前值
我想知道目前(截至KO 3.1)实施/扩展observable(通知新订户其当前值)的推荐方法是什么Knockout.js 可观察的,通知新订户其当前值,knockout.js,Knockout.js,我想知道目前(截至KO 3.1)实施/扩展observable(通知新订户其当前值)的推荐方法是什么 是的,我知道我可以直接调用observable.valueHasMutated,但这不是问题的重点:-)您可以使用扩展器实现这一点,扩展器将覆盖订阅功能以通知订阅方: ko.extenders.notifyOnSubscribe = function(obs) { obs.originalSubscribe = obs.subscribe; obs.subscribe = fun
是的,我知道我可以直接调用observable.valueHasMutated,但这不是问题的重点:-)您可以使用扩展器实现这一点,扩展器将覆盖订阅功能以通知订阅方:
ko.extenders.notifyOnSubscribe = function(obs) {
obs.originalSubscribe = obs.subscribe;
obs.subscribe = function (callback, target, ev) {
callback(obs.peek());
return obs.originalSubscribe(callback, target, ev);
}
return obs;
};
您可以使用以下测试它,为什么不在调用
subscribe
时获取值?@Gôtô因为我希望避免重复初始值的相同代码路径。