link: function(scope, elm, attrs, ctrl) {
ctrl.$parsers.unshift(function(viewValue) {
scope.pwdValidLength = (viewValue && viewValue.length >= 8 ? 'valid' : undefined);
scope.pwdHasLetter = (viewValue && /[A-z]/.test(viewValue)) ? 'valid' : undefined;
scope.pwdHasNumber = (viewValue && /\d/.test(viewValue)) ? 'valid' : undefined;
if(scope.pwdValidLength && scope.pwdHasLetter && scope.pwdHasNumber) {
ctrl.$setValidity('pwd', true);
return viewValue;
} else {
ctrl.$setValidity('pwd', false);
return undefined;
}
});
}
http://jsfiddle.net/adamdbradley/Qdk5M/
Dans le violon mentionné ci-dessus comment la validation du mot de passe en cours? Que fait le $ parser.unshift ?? et quelle est l'utilisation de test (viewValue) .....? J'ai parlé AngularJS site principal mais ne pouvait pas comprendre quelque chose ... S'il vous plaît me guider pas à pas de la façon dont il est ... valider
Je suis nouveau à AngularJS ..
Grande réponse. Devrait être accepté. – hitokiri82
Juste pour être clair, $ parsers est un tableau (ce qui signifie, type javascript standard, pas spécifique à Angular). unshift est une méthode native au prototype Javascript Array, ainsi le commentaire dans cette réponse de "Array.unshift() le met au début de la liste ..." C'est une distinction importante, je pense, parce que les débutants peuvent être confus entre ce qui est angulaire et ce qui est natif JS. – dudewad