Angular.JS中指令的命名規(guī)則詳解
命名規(guī)范
同一個AngularJS指令,在js文件和html文件中有著不同的命名規(guī)范:在js文件中使用標準的小駝峰命名法,在html文件中使用“小寫字母+連接符”的命名法。如下表所示
在js文件中 | 在html文件中 |
---|---|
ngApp | ng-app |
myDirective | my-directive |
處理機制
AngularJS之所以選擇這樣的命名方式,是因為html文件不區(qū)分大小寫,而js文件則對大小寫敏感(myDir和mydir在js文件中是不同的指令,但html看來是同一個指令),為了避免可能出現(xiàn)的錯誤,所以使用上述命名規(guī)范。
AngularJS執(zhí)行過程中,對“小寫字母+連接符”形式的命名做如下處理,最終裝換成小駝峰命名法:
- 去掉開始部分的x-和data-;
- 第一個單詞不變,把連接符后面的單詞首字母轉(zhuǎn)換成大寫,去掉連接符。
這里有兩點需要注意:
- 指令命名時不要以x或data作為第一個單詞
- 支持的鏈接符包括:,-和_,但通常會選擇-作為連接符
隔離作用域?qū)ο笾械膶傩悦?/strong>
指令隔離作用域?qū)ο笾袑傩悦?guī)則同上,見下面代碼:
.directive('myDirective', function() { return { restrict: 'A', scope: { myUrl: '@', // 隔離作用域?qū)ο笾袑傩悦麨樾●劮迕? myLinkText: '@' }, template: '<a href="{{myUrl}}">{{myLinkText}}</a>' })
<div my-directive my-url="http://google.com" <!-- html文件中使用“小寫字母+分割符”的命名方式--> my-link-text="Click me"> </div>
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對本站的支持。
版權(quán)聲明:本站文章來源標注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學習參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。