我正在尝试在模型上添加多个验证指令,但它不起作用。单独他们工作,但他们不工作。
我有 2 个输入指令来验证可以在其中输入的最小值和最大值。
<input type="text" min-val="2" max-val="5" ng-model="age" />
这是pluker链接
谢谢!
我正在尝试在模型上添加多个验证指令,但它不起作用。单独他们工作,但他们不工作。
我有 2 个输入指令来验证可以在其中输入的最小值和最大值。
<input type="text" min-val="2" max-val="5" ng-model="age" />
这是pluker链接
谢谢!
差不多好了。
您将匿名函数传递给 $parsers 和 $formatters 数组:
modelCtrl.$formatters.push(function(value) {
validator(value);
});
在匿名函数内部,您正在调用您的validator
函数,但您没有返回结果。
要进行补救,请返回函数结果,如下所示:
modelCtrl.$formatters.push(function(value) {
return validator(value);
});
modelCtrl.$parsers.push(function(value) {
return validator(value);
});
为了简化您的代码,您可能希望直接使用函数名称作为变量引用(不需要匿名函数):
modelCtrl.$formatters.push(validator);
modelCtrl.$parsers.push(validator);