現在、dom要素のjQueryデータを使用して状態を保存しています。
ko.bindingHandlers.customValue = {
init: function init(element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
var state = { isEditing: false };
$(element).focus(function focus() {
state.isEditing = true;
}).blur(function blur() {
state.isEditing = false;
}).data("customBinding", state);
},
update: function update(element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
// ignore if updating
if (!$(element).data("customBinding").isEditing) {
// handle update if they are not updating
}
}
};
domを必要としないバインディングごとの状態を保存するためのより良い場所はありますか?bindingContextを使用して、バインディングの各インスタンスの状態を保存できますか?