我創建了一個指令(itcValidationMessages),這將讓我顯示一個驗證消息,我把它的形式元件上作爲一個屬性象下面這樣:傳遞一些性質在AngularJS一個指令
<form id="register-form" novalidate ng-submit="register()" itc-validation-messages ...
指令,我如上所述,遍歷表單中的所有輸入元素,並在任何人有無效狀態時顯示錯誤消息。
我存儲在單獨的文件驗證消息(因爲可以有很多他們的,我想是i8n所以我從指令分開他們準備)是這樣的:
angular.module('models.ValidationMessages', []).constant("ValidationMessages", {
validationMessages: {
required: 'Value is required!',
email: 'You should enter a valid email address!',
minlength: 'Enter more characters!',
maxlength: 'You have entered to many characters!'
}
} );
將這些消息保持不變是否正確?
我會爲每個驗證默認的消息,但我想讓添加自定義消息爲每個輸入例如爲:
<input type="password" minlength-message="Your password should has at least 3 characters"
一個什麼是做到這一點的最好方法是什麼? 因爲爲什麼我使用類似上面的屬性(minlength-message),我無法使用$observe
從我的指令中訪問它。 我不想聲明一個對象並將這些自定義消息放在一個地方,因爲我應該爲每個消息添加一個輸入名稱以識別它們屬於哪個輸入。 所以我試圖找到一些方便和根據藝術解決方案。
我不需要在itcValidationMessages指令中指定一個獨立的範圍,我不希望每個驗證器都有一個單獨的指令,例如minlengthMessage將特定的驗證消息傳遞給我的指令,該指令應顯示此消息(itcValidationMessages)。
感謝您的回答,但是這不是我的意思。我已經澄清了一下我的描述,對不起,如果我感到困惑。 –
我不想有另一個指令,因爲我有一個表單元素。我必須以某種方式將這些驗證消息與每個輸入連接起來,並通過我的指令訪問它們。 –