ng-if
和data-ng-if
有什么区别?
它们似乎都以相同的方式工作,但是由于data-ng-if
上没有太多可用的资料,因此我无法弄清它们的区别。
答案 0 :(得分:3)
从技术上讲,两者是相同的,但是在验证页面W3C validator而不在自定义属性上定义data-
时,它将失败,因为W3C validator
对自定义属性一无所知,因此您必须在自定义属性之前明确定义data-
,然后W3C validator
会传递HTML
答案 1 :(得分:1)
它们是等效的。 $compile
服务将它们链接到同一指令。
从文档中:
标准化过程如下:
- 从元素/属性的前面剥离
x-
和data-
。- 将
:
,-
或_
分隔的名称转换为camelCase。例如,以下形式都是等效的,并且与
ngBind
指令匹配:<div ng-controller="Controller"> Hello <input ng-model='name'> <hr/> <span ng-bind="name"></span> <br/> <span ng:bind="name"></span> <br/> <span ng_bind="name"></span> <br/> <span data-ng-bind="name"></span> <br/> <span x-ng-bind="name"></span> <br/> </div>
有关更多信息,请参见
答案 2 :(得分:0)
arbitary attribute
HTML 5引入了data属性。使用数据前缀-我们可以创建自定义数据属性,例如
<div id="thediv" data-ng-if="conditino"></div>
答案 3 :(得分:0)