在controller.$options
函数中设置link
似乎可用于去除模糊事件:
controller.$options = {
updateOn : 'blur',
debounce : 3000
};
...但是如果我为默认事件尝试相同的操作,模型永远不会更新:
controller.$options = {
updateOn : 'default',
debounce : 3000
};
当使用ng-model-options
指令时,一切都按预期工作。
答案 0 :(得分:18)
查看source of the ngModelOptions directive,您需要设置updateOn : 'default'
controller.$options.updateOnDefault = true;
。
答案 1 :(得分:18)
对于您的情况,您可以尝试
ngModelController.$options = {
updateOn: 'blur',
updateOnDefault: true,
debounce: {
'blur': 2000,
'default': 3000
}
};
但是现在(ng1.6 +)你必须这样做(阅读更多here,here和here):
ngModelController.$overrideModelOptions({
updateOn: 'blur',
updateOn: 'default',
debounce: {
'blur': 2000,
'default': 3000
}
});