假设我们需要一个自定义的Angular验证器,它为错误消息提供参数。 例如,如果我们要创建一个验证程序来评估数组的最小长度,以及它何时无效,则消息应该是“最小长度为{0}”。AngularJS验证指令消息参数
现在考虑我们已经为此验证创建了一个自定义指令(如下所示),我们如何从验证指令函数向验证消息提供“{0}”参数?
这里是为一个自定义验证指令:
.directive('arrayLength', function() {
return {
require: 'ngModel',
link: function (scope, elm, attrs, ctrl) {
ctrl.$validators.arrayLength = function (modelValue, viewValue) {
return modelValue >= parseInt(attrs.arrayLength);
};
}
};
});
在这里,我们将宣布消息:
.run([
'defaultErrorMessageResolver',
function (defaultErrorMessageResolver) {
defaultErrorMessageResolver.getErrorMessages().then(function (errorMessages) {
errorMessages['arrayLength'] = 'Minimum length is {0}';
});
}
]);
所以...任何想法?
我相信这不是火箭科学。只是我是Angular的新手。
在此先感谢。
一个plunker或的jsfiddle使用运行的代码? –
是的。这里是一个小提琴:https://jsfiddle.net/4tsc7gcf/14/只要打GO!并注意显示的消息。 {0}参数是空的。 – alvesdm