My code:
app.directive('abcabc', function (){ alert('directive');}); // working
but
app.directive('abcAbc', function (){ alert('directive');}); // not working !
app.directive('abc-abc', function (){ alert('directive');}); // not working !
我做错了吗?
或者 Angular 指令有特殊的命名规则吗?
AngularJS 试图让每个人都开心!
有些人更喜欢使用数据属性,例如data-abc-abc
,我认为会让验证者高兴。其他人更喜欢使用名称空间,例如abc:abc
,其他人更喜欢使用实际的指令名称abcAbc
。甚至全部大写ABC_ABC
。或者扩展属性,例如x-abc-abc
.
AngularJS 规范了 HTML 中使用的名称,以尝试涵盖所有这些情况。data-
and x-
被剥离,剩余的骆驼装:
, -
and _
作为单词边界。这使得abcAbc
从上面的例子来看,它用于查找 JavaScript 中声明的指令。
这全部称为属性规范化(US:属性规范化),可以在AngularJS 文档 https://docs.angularjs.org/guide/directive and 源代码 https://github.com/angular/angular.js/blob/dafb8a3cd12e7c3247838f536c25eb796331658d/src/ng/compile.js#L2029.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)