我正在使用Angular JS 1.5.6,我想以编程方式取消同步$ viewValue和$ modelValue,我希望$ viewValue保持其当前值,但将$ modelValue设置为undefined。我尝试了modelCtrl.$modelValue = undefined,但是它不起作用。

这是我指令的代码

function blurFocusDirective() {
return {
  require: 'ngModel',
  link: function(scope, elm, attrs, modelCtrl) {
    elm.on('blur', function() {
      console.log('capture blur event');
      modelCtrl.$modelValue = undefined;
    });
  }
};}


我有plunkered问题。

最佳答案

通过将modelCtrl.$modelValue = undefined;替换为ngModel.$setViewValue(undefined);进行修复

10-07 14:52