我有一堆角指令,它們看起來都一樣,像(更復雜的版本)定義許多角指令與循環
app.directive('note', function() {
return {
restrict: 'E',
transclude: true,
template: '<div class="' + 'note' + '"></div>
}
});
與note
很多其他的東西所取代。我想在循環中定義它們以保持乾燥。我試過
var dirs = ['note', 'introduction', 'thing'];
for (var dir, i = 0; dir = dirs[i]; i++) {
app.directive(dir, function() { ... });
}
無濟於事。有沒有一個好的方法來做到這一點?
爲什麼在循環中的奇怪狀態?爲什麼不只是使用數組的長度,我喜歡平常?我已經看到這樣做的一些組件(實際上使用類似的東西類似於一般的「社交媒體圖標」的東西,它會自動拉動正確的圖標,並建立一個鏈接,這是不完全相同的,因爲我使用屬性但讓我看看它是否會在這裏幫助...我也看到了這個技術在angularjs中的facebook插件包裝。 – shaunhusain
@shaunhusain當我== dirs.length,dir = undefined,並且循環停止。反正使用角度,我更喜歡angular.forEach –
@jtseng是啊我得到它仍然會工作,只是通常看到while循環完成這種條件,並且似乎不必要地混淆使用此for循環檢查長度條件是明確的並且工作得很好 – shaunhusain