在ko 2中,我曾经在创建自定义绑定时添加了allBindingsAccessor()附加绑定返回的对象。这是将复杂绑定包装成简单绑定的便捷方式。
我注意到在ko 3中它不再起作用了 - 现在有了'get'和'has'方法的对象allBindings。不幸的是,它没有'set'方法,所以我不能再添加到我的自定义选项绑定optionsText和optionsValue ......
任何想法如何重新开始这项工作?
答案 0 :(得分:3)
使用preprocessing功能在Knockout 3.0中更好地处理。以您的jsFiddle为例,以下是您在3.0中实现该功能的方法:
ko.bindingHandlers.customList = {
preprocess: function(value, name, addBinding) {
addBinding('options', value);
addBinding('optionsText', '"c"');
addBinding('optionsValue', '"b"');
}
};
jsFiddle:http://jsfiddle.net/mbest/avbnB/3/