228 votes

ng-app vs données-ng-app, quelle est la différence ?

Je suis actuellement à la recherche à ce tutorial vidéo pour angular.js

À un certain moment (au bout de 12'40"), l'orateur déclare que les attributs ng-app et data-ng-app="" sont plus ou moins équivalent à l'intérieur de l' <html> balise, et sont donc ng-model="my_data_binding et data-ng-model="my_data_binding". Cependant, L'orateur affirme que le html serait validée par le biais de différents validateurs, en fonction de l'attribut est utilisé.

Pourriez-vous expliquer la différence entre les deux façons, ng- préfixe contre data-ng- préfixe ?

403voto

itcouldevenbeaboat Points 1357

Bonne question. La différence est simple - il n'y a absolument aucune différence entre les deux , sauf que certains HTML5 validateurs lèvera une erreur sur une propriété comme ng-app, mais de ne pas le jeter de nouveau une erreur quelque chose avec le préfixe data-, comme data-ng-app.

Donc, pour répondre à votre question, utilisez data-ng-app si vous souhaitez valider votre code HTML à être un peu plus facile.

Fait amusant: Vous pouvez également utiliser x-ng-app pour le même effet.

65voto

srinu Points 111

De Angularjs Documentation

Angulaire normalise une balise d'élément et d'attribut nom de déterminer les éléments qui correspondent aux directives. Généralement, nous consulter directives par leur casse la casse mixte normalisé nom (par ex. ngModel). Cependant, depuis l'HTML n'est pas sensible à la casse, nous consulter directives dans les DOM par la baisse des cas, les formes, généralement à l'aide de dash délimité par des attributs sur des éléments du DOM (par exemple, ng-model).

Le processus de normalisation est comme suit:

Bande de x et de données à partir de l'avant de l'élément/des attributs. Convertir la :, -, ou _délimité par nom de camelCase. Voici quelques équivalent des exemples d'éléments qui correspondent à ngBind:

basé sur la déclaration ci-dessus ci-dessous sont tous valables directives

1. ng-bind
2. ng:bind
3. ng_bind
4. data-ng-bind
5. x-ng-bind

29voto

Manu Letroll Points 1401

La différence réside dans le fait que personnalisé attributs sont valides dans la [spécification HTML5](http://www.w3.org/TR/2011/WD-html5-20110525/elements.html#embedding-custom-non-visible-data-with-the-data-attributes). Donc si vous avez besoin de votre balisage pour être validé, vous devez les utiliser plutôt que le des attributs.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X