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;
}
};