通知新订阅者其当前值的可观察对象



我想知道目前(截至KO 3.1)实现/扩展通知新订阅者其当前值的可观察对象的推荐方法是什么?

我知道我可以直接调用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;
};

您可以使用以下命令进行测试jsFiddle

最新更新