Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Can';使用ng model optios getterSetter时,输入无效的视图值_Javascript_Angularjs_Angularjs Forms - Fatal编程技术网

Javascript Can';使用ng model optios getterSetter时,输入无效的视图值

Javascript Can';使用ng model optios getterSetter时,输入无效的视图值,javascript,angularjs,angularjs-forms,Javascript,Angularjs,Angularjs Forms,如果使用带有表单验证的ng model option的getterSetter,则无法在输入中输入任何无效内容。e、 g HTML 有了这个输入,我不能输入任何数字,因为它将小于10 我试图获得与没有getterSetter时相同的行为。即:用户可以在视图中输入任何无效输入,但只有在输入有效时才会设置模型 任何人都知道一种解决方法,我可以使用它来使用getterSetter进行表单验证,或者任何人都可以解释为什么会发生这种情况?之所以会发生这种情况,是因为传递给setter的值可以是未定义的,

如果使用带有表单验证的
ng model option
getterSetter
,则无法在输入中输入任何无效内容。e、 g

HTML

有了这个输入,我不能输入任何数字,因为它将小于10

我试图获得与没有
getterSetter
时相同的行为。即:用户可以在视图中输入任何无效输入,但只有在输入有效时才会设置模型


任何人都知道一种解决方法,我可以使用它来使用
getterSetter
进行表单验证,或者任何人都可以解释为什么会发生这种情况?

之所以会发生这种情况,是因为传递给setter的
值可以是
未定义的
,从而诱使getterSetter将“setter”调用作为“getter”调用处理

value!==未定义的
参数。长度
将解决您的问题:

<input type="number" ng-model-options="{getterSetter: true}" ng-model="ctrl.myVal" min="10">
this.myVal = function(value) {
  if (value !== undefined) {
    this.actualVal = value;
  } else {
    return this.actualVal;
  }
};