淘汰赛,
我开始依赖 with 绑定来建立上下文嵌套。虽然我喜欢 KO 在某些情况下根据绑定元素的状态操作 DOM 的方式,但有时我只想要绑定含义而不删除 DOM。
有谁知道是否有可能防止在单个元素绑定级别上进行 DOM 操作?
谢谢,文尼
淘汰赛,
我开始依赖 with 绑定来建立上下文嵌套。虽然我喜欢 KO 在某些情况下根据绑定元素的状态操作 DOM 的方式,但有时我只想要绑定含义而不删除 DOM。
有谁知道是否有可能防止在单个元素绑定级别上进行 DOM 操作?
谢谢,文尼
with
当最初绑定到对象(或其他真实值)时,Knockout 版本 2.2+ 不会清除 DOM 元素。或者,您可以使用withlight
我前段时间放在一起的绑定。它只会绑定到一个对象(不是可观察的)。
ko.bindingHandlers['withlight'] = {
'init': function(element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
var bindingValue = valueAccessor();
if (typeof bindingValue != 'object' || bindingValue === null)
throw new Error('withlight must be used with an object');
var innerContext = bindingContext['createChildContext'](bindingValue);
ko.applyBindingsToDescendants(innerContext, element);
return { 'controlsDescendantBindings': true };
}
};