在AngularJS中使用ng-app
时:文档中找到的ng-app
将用于定义作为应用程序自动引导的根元素。
在某些应用程序中,它被用作data-ng-app
。
以下两个声明是否有任何区别,如果是,那么&如果否,那么哪一个是重要的,为什么?
1
<body ng-app>
<p>{{ 1 + 2 }}</p>
</body>
2
<body data-ng-app>
<p>{{ 1 + 2 }}</p>
</body>
答案 0 :(得分:4)
两者都是相同的,除非您希望您的模板/代码符合HTML并遵循最佳实践。使用data-ng-app。
这是官方documentation引用的内容:
“最佳实践:首选使用划线分隔格式(例如ng-bind为ngBind)。如果您想使用HTML验证工具,您可以改为使用数据前缀版本(例如data-ng-bind for ngBind)。上面显示的其他表格因遗留原因而被接受,但我们建议您避免使用它们。“
希望能回答你的问题。
干杯!
答案 1 :(得分:3)
答案 2 :(得分:1)
ng-app不是严格有效的HTML。 自定义属性应以数据为前缀 - 有效。
因此angular添加了这种语法,因此用户仍然可以拥有有效的html。 (Knockout也使用数据属性。) 功能完全没有区别。
答案 3 :(得分:0)
ng-app和data-ng-app两者彼此相似,它们之间的唯一区别是有时HTML验证器在使用ng-app时会显示错误。所以你可以使用data-ng-app。
注意:x-ng-app也具有相同的属性。您也可以使用x-ng-app而不是使用data-ng-app。