Допустим, нам нужен собственный валидатор Angular, который предоставляет аргументы для сообщения об ошибке. Например, если бы мы создали валидатор, который оценивал бы минимальную длину массива, и когда он был бы недействителен, сообщение должно было быть "Минимальная длина равна {0}".
Теперь, учитывая, что мы создали пользовательскую директиву (как показано ниже) для этой проверки, как мы можем предоставить аргумент "{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.
Заранее спасибо.