假設我們需要一個自定義的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