He comenzado a aprender sobre AngularJS y estoy confundido acerca de cuáles son las diferencias entre las directivas ng-appy data-ng-app.
angularjs
angularjs-directive
usuario1876508
fuente
fuente

Respuestas:
La mayoría de estas respuestas simplemente dicen que HTML de plantilla es válido o que cumple con el Validador de HTML , sin explicar tampoco lo que significan ESOS términos.
No estoy seguro, pero supongo que estos términos se aplican a los programas de validación HTML que escanean su código para cumplir con los estándares, algo así como pelusa. No se reconocen
ng-appcomo un atributo válido. Esperan que los atributos HTML no predeterminados sean precedidos pordata-attribute_name_here.Por lo tanto, los creadores de
AngularJShan creado nombres alternativos para sus directivas que incluyen eldata-frente de ellos para que los programas de validación HTML "les gusten".fuente
Ninguno en términos del comportamiento de tiempo de ejecución, esos son solo diferentes estilos de directivas de nombres como se describe aquí: http://docs.angularjs.org/guide/directive
Como puede ver al leer esto,
data-puede usarse para hacer que su HTML pase las pruebas de validación de HTML /fuente
Puedes declarar el espacio de nombres angular
<html xmlns:ng="http://angularjs.org" ng-app>fuente
En los navegadores modernos no hay diferencia, pero en los IE más antiguos, no funcionarán a menos que declare un espacio de nombres XML que lo defina.
También hay una diferencia de validación en que
ng-appno es XHTML válido, y hará que su página web falle en las validaciones HTML. Angular le permite prefijar sus directivas condata-ox-permitirle validar.fuente
Puede usar data-ng-, en lugar de ng-, si desea que su página HTML sea válida.
Esto se generará un error
Esto no arrojará un error
fuente
La diferencia básica entre estos dos términos es que data-ng-app valida el HTML mientras que el último no. La funcionalidad sigue siendo la misma. Para más referencia puede probar w3Validator.
fuente
Absolutamente no hay diferencia entre los dos, excepto que ciertos validadores HTML5 arrojarán un error en una propiedad como ng-app, pero no arrojan un error para cualquier cosa con el prefijo data-, como data-ng-app. Por lo tanto, usar el prefijo de datos con nuestras directivas angulares es bueno.
Incluso puede usar las directivas angulares de las formas mencionadas a continuación ng-bind, ng: bind, ng_bind, data-ng-bind, x-ng-bind
fuente