自定义绑定后运行默认绑定

时间:2015-12-21 12:29:26

标签: javascript knockout.js binding

我有一个名为groupedOptions的淘汰赛自定义绑定,它将select列表的选项与optgroup绑定。这与标准选项绑定相同,但包括处理选项组的逻辑。

在淘汰赛v2.3下绑定工作正常,但升级到v3.3后停止工作。更新后,它将不再正确绑定值。

看一下新版本中值绑定的来源,它有一些代码告诉它在选项绑定后运行:

ko.bindingHandlers['value'] = {
  'after': ['options', 'foreach'],
  'init': function (element, valueAccessor, allBindings) {
    ...

将此更改为:

ko.bindingHandlers['value'] = {
  'after': ['options', 'foreach', 'groupedOptions'],
  'init': function (element, valueAccessor, allBindings) {
    ...

会起作用,但对我来说似乎有些笨拙。有没有人知道最佳实践方法是什么。

换句话说:如果我有一个自定义绑定需要在敲除中定义的绑定之前运行,如何在不编辑敲除源的情况下执行此操作?

0 个答案:

没有答案