Pourquoi ne Angulaire fournir ng-maxlength quand il y a une norme maxlength?
HTML offre un standard de l'attribut maxlength depuis la version 4.01.
Angulaire fournit un ng-maxlength directive.
La différence est que l'approche standard n'autorise pas la saisie de plus de max, tout Angulaire de l'approche génère une erreur de validation.
Pourquoi ont-ils décidé d'inclure une telle directive? C'est pas à cause de la dynamique de la liaison de données de maxlength puisque le comportement est incohérent. C'est pas à cause de la compatibilité puisque c'est disponible, même en HTML 4.01. Ma conjecture est qu'il est là pour fournir une alternative de validation de paradigme, mais il semble que plus de génie.
Comme vous l'avez dit -
La même chose que vous pourriez demander, pourquoi utiliser
IHMO, je pense que c'est surtout à cause de la forme de gestion de Anguleuses : docs.angularjs.org/api/ng/directive/form > ngMaxLength est lié à la validation / événements d'erreur (et les classes CSS), lors de l'attribut HTML n'est pas.
juste point: programmers.stackexchange.com/questions/262659/...
C'est un bon, @Den
maxlength
définit la propriété d'un élément HTML. ng-maxlength
définit comment valider un modèle. Peut-être qu'il est conçu, peut-être pas. Je suppose que c'est assez arbitraire.La même chose que vous pourriez demander, pourquoi utiliser
ng-validate
pour vérifier si quelque chose est un nombre, ou tout simplement utiliser <input type="number">
(oubliez les problèmes de compatibilité pour un temps)IHMO, je pense que c'est surtout à cause de la forme de gestion de Anguleuses : docs.angularjs.org/api/ng/directive/form > ngMaxLength est lié à la validation / événements d'erreur (et les classes CSS), lors de l'attribut HTML n'est pas.
juste point: programmers.stackexchange.com/questions/262659/...
C'est un bon, @Den
OriginalL'auteur Den | 2014-11-13
Vous devez vous connecter pour publier un commentaire.
Non seulement il y valider max longueur, il ajoute également une classe
ng-invalid-maxlength
.ainsi, lorsque vous mettre quelque chose au-delà de la limite
ng-invalid-maxlength
classe sera placé làet dans la classe que vous pouvez écrire votre propre feuille de style css.
Donc, après que la touche appuyez sur si la validation échoue, le css sera invoquée simultanément et reflète sur votre INTERFACE utilisateur.
OriginalL'auteur KanhuP2012
La réponse précédente peut d'été correct dans les versions antérieures de anguleux, mais à compter d'aujourd'hui et Angulaire v1.5.5, il ressemble à
maxlength
fait exactement la même chose queng-maxlength
mais renforce également la HTML entrées propriété maxlength sur des données de type texte.Exemple:
maxlength
va appliquer un 5 caractères max sur l'entrée et également ajouter la bonne angulaire de la validation de classe à l'entrée.Alors que
ngMaxlength
impose uniquement de validation. Voir: https://docs.angularjs.org/api/ng/directive/ngMaxlengthConseiller:
Utilisez simplement
maxlength
.OriginalL'auteur fabbb