AngularJS 指令的验证

validation of AngularJS direcrives

我在 W3C School 上读到,要制作一个有效的 HTML 页面,我必须在 HTML 文件中的每个 angular 指令之前添加 data(例如:

<p>The name is <span data-ng-bind="firstName"></span></p>

<div data-ng-app="" data-ng-init="firstName='John'">

好的,没关系。我有两个问题:

  1. 这个前缀是否应该只用于 ng- 指令?
  2. 这个 data- 前缀是否会给 Angular 第三方库带来问题?

data- 前缀可由任何指令使用,底层指令名称规范化过程负责将指令属性声明与指令实现相匹配。

有关规范化过程的更多详细信息,请参阅 "Matching Directives" 部分下的 directive user guide

因此向任何指令添加 data- 前缀不会影响任何第三方指令。

最近,data 并不常用作前缀,因为 angular 的大多数用户只是使用 ng- 代替。使用 data 可能会给你增加一些向后兼容性,但没什么意义,因为大多数人不再使用它了。使用 data 前缀并没有错,只是没有必要。