以下の背後にある論理を理解していません。誰かが私を理解するのを手伝ってくれることを願っています. Web アプリをクリーンアップしていて、次のコード行が見つかりました。アプリは Knockout.js を使用した MVC アプリです。次の構造を持ついくつかのカスタム バインディング セットアップがあります。
var originalBindingInit = ko.bindingHandlers.binding.init;
var originalBindingUpdate = ko.bindingHandlers.binding.update;
ko.bindingHandlers.binding = {
init: function (element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
originalBindingInit(element, valueAccessor, allBindingsAccessor, viewModel, bindingContext);
// Init code here...
},
update: function (element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
originalBindingUpdate(element, valueAccessor, allBindingsAccessor, viewModel, bindingContext);
// Update code here...
}
};
init と update がバインディングの外側の変数に設定され、バインディングの各セクションの最初の行で実行される理由がわかりません。これを行うことでループを作成しているように思えます。
誰でもこれに光を当てることができますか?ノックアウトのドキュメントでカバーされている場合、私はそれを見逃しており、そのことをお詫び申し上げます.