簡體   English   中英

Angular指令名稱:只允許小寫字母?

[英]Angular directive name: only lower case letters allowed?

我的代碼:

app.directive('abcabc', function (){ alert('directive');}); // working

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-x-被剝離,其余部分帶有:-_作為字邊界。 這使得abcAbc來自上面提到的情況,用於查找在JavaScript中聲明的指令。

這稱為屬性規范化(US:屬性規范化),可以在AngularJS文檔源代碼中找到

您應該在html和camelCase中使用以短划線分隔的名稱作為指令中的相應名稱。

正如您可以在doc上閱讀的那樣: Angular使用name-with-dashes作為屬性名稱,使用camelCase作為相應的指令名稱)

這里: http//docs.angularjs.org/tutorial/step_00

好吧,指令名稱必須全部小寫,至少在AngularJS版本1.4.9中,否則我得到一個$ inject無法找到錯誤

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM