首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Angular指令名称:只允许小写字母?

Angular指令名称:只允许小写字母?
EN

Stack Overflow用户
提问于 2013-08-01 17:59:12
回答 2查看 36.5K关注 0票数 76

我的代码:

代码语言:javascript
复制
app.directive('abcabc', function (){ alert('directive');}); // working

代码语言:javascript
复制
app.directive('abcAbc', function (){ alert('directive');}); // not working !
app.directive('abc-abc', function (){ alert('directive');}); // not working !

我做错了吗?或者,Angular指令有特殊的命名规则?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-01 18:01:35

AngularJS试图让每个人都开心!

有些人更喜欢使用数据属性,比如data-abc-abc,我想这是为了让验证器满意。其他人更喜欢使用像abc:abc这样的名称空间,而其他人则更喜欢使用实际的指令名abcAbc。甚至全是大写的ABC_ABC。或者像x-abc-abc这样的扩展属性。

AngularJS对HTML中使用的名称进行了规范化,试图涵盖所有这些情况。data-x-被剥离,其余部分以:-_作为单词边界。这从上面提到的情况中生成了abcAbc,它用于查找在JavaScript中声明的指令。

这一切都称为属性规范化(US: attribute normalization),可以在AngularJS documentationsource code中找到。

票数 118
EN

Stack Overflow用户

发布于 2018-03-05 20:14:43

指令名必须全部小写,至少在AngularJS版本1.4.9中是这样,否则我会得到一个$inject can't be found错误

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17990864

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档