AngularJS文档says Optionally the directive can be prefixed with x-, or data- to make it HTML validator compliant.
。
示例标记:
<input ng-model="name">
data-
:<input data-ng-model="name">
x-
:<input x-ng-model="name">
x-
前缀的输入速度比data-
快,但我看过的教程使用了无前缀或data-
,所以我的问题是:我有什么理由可能需要使用data-
而不是x-
?
答案 0 :(得分:11)
使用data-
前缀而不是x-
前缀的好处是,data-
前缀保证可供作者随意使用,而x-
前缀可能有一天会被用于浏览器特定的目的,可能与你的冲突。请注意,x-
根据HTML5不符合。
答案 1 :(得分:8)
data-
是standardized part of the HTML5 spec。从语义上讲,这是最好的方式。
答案 2 :(得分:0)
为避免应用程序属性与可在HTML中定义的未来属性之间发生冲突,w3.org定义并规范了特定方案data-*
属性。见the norm。
使用它
此外,使用规范化数据属性可以使用element.dataset属性,某些库(例如jQuery)为您提供特定的实用程序。