Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 淘汰applyBindings已更改事件_Javascript_Knockout.js - Fatal编程技术网

Javascript 淘汰applyBindings已更改事件

Javascript 淘汰applyBindings已更改事件,javascript,knockout.js,Javascript,Knockout.js,有没有办法在ko中监听applyBindings事件 我搜索过谷歌等,但找不到办法。答案需要得到支持,即不调用将来可能被KO开发人员更改的内部函数 以下内容与此不同,因为它询问如何检查是否调用了applyBindings。我想知道什么时候调用它。在JavaScript中,拦截任何方法调用都非常容易,因为您只需修改对象即可。因此,您可以使用自己的函数替换ko.applyBindings,该函数可以执行任何您想要的操作(在调用原始函数之前或之后): 注意:此方法在调试版本和发布版本的Knockou

有没有办法在ko中监听
applyBindings
事件

我搜索过谷歌等,但找不到办法。答案需要得到支持,即不调用将来可能被KO开发人员更改的内部函数


以下内容与此不同,因为它询问如何检查是否调用了applyBindings。我想知道什么时候调用它。

在JavaScript中,拦截任何方法调用都非常容易,因为您只需修改对象即可。因此,您可以使用自己的函数替换
ko.applyBindings
,该函数可以执行任何您想要的操作(在调用原始函数之前或之后):


注意:此方法在调试版本和发布版本的Knockout之间表现不同。Knockout在内部使用
ko.applyBindings
进行
模板
绑定,在使用发布版本时,它将始终调用内部
ko.applyBindings
函数,而在调试版本中,它将调用我们的替换函数。

谢谢!我不知道你能做到这一点,我承认我不太擅长javascript。
ko.applyBindings = (function(original) {
    return function () {
        original.apply(this, arguments);
        alert('ko.applyBindings called');
    };
})(ko.applyBindings);