Valider personnalisé à l'aide de la directive ngMessages
J'ai écrit une application web dans angularjs et à l'aide de angulaire du matériel (pas sûr si c'est pertinent à la question) et ngMessages de fournir de la rétroaction pour non valide les entrées de l'utilisateur.
Généralement, pour la validation des directives fournies, je peux valider d'une manière similaire à:
<md-input-container>
<input required name="myInput" ng-model="someModel">
<div ng-messages="formName.myInput.$error">
<div ng-message="required">This field is required.</div>
</div>
</md-input-container>
Mais si j'ai créé ma propre directive...
moduleName.directive('ngCustomdir', function(){
return {
restrict: 'A',
require: 'ngModel',
link: function($scope, $element, $attrs, ngModel){
//do some validation
return validation; //<--true or false based on validation
}
};
}
et l'inclure dans mon entrée...
<input required ng-customdir name="myInput" ng-model="someModel">
Je sais qu'il valide l'entrée, parce que si l'entrée est invalide, basé sur mon custom de la directive de validation, le domaine s'allume en rouge et l' $valeur non valide est vrai, mais je ne sais pas comment faire un message s'affiche avec ngMessages basée sur le moment où cela se produit.
<div ng-messages="formName.myInput.$error">
<div ng-message="required">This field is required.</div>
<div ng-message="customdir">This is what I need to appear.</div>
</div>
Je ne peux pas sembler obtenir un message s'affiche lorsque mon custom directive de validation n'est pas valide. Comment dois-je faire?
Merci pour l'aide à l'avance.
OriginalL'auteur northsideknight | 2015-06-30
Vous devez vous connecter pour publier un commentaire.
Vous obtenez très proche, il suffit d'ajouter certains de validation de votre
link
fonction:Lorsque les changements de modèle, AngularJS appelle tous les valider fonctions dans
$validators
objet. La ng-message d'affichage basé sur le nom de la fonction.Plus d'informations sur le $validateurs:
https://docs.angularjs.org/api/ng/type/ngModel.NgModelController
http://blog.thoughtram.io/angularjs/2015/01/11/exploring-angular-1.3-validators-pipeline.html
OriginalL'auteur Huy Hoang Pham
Il n'y a plus d'alternative compacte aux Huy solution:
OriginalL'auteur Adam Bubela