下面是乙個小例子,用來說明我經常看到的一種模式。我們需要乙個開關型的按鈕。(注意:這個例子的**有點裝逼,並且有點冗長,只是為了用來代表更加複雜一些的例子,這些例子通常是以與此相同的方式來解決的。)
.directive( 'mydirective', function ()
else
on = !on;
});}
};});
這段**裡面有很多錯誤的地方。
第一,jquery從來就不是必須的。我們這裡要實現的東西實際上完全不需要jquery!
第二,即使我們已經在頁面上引入了jquery,也沒有必要在這裡去使用;對於沒有使用jquery的專案,我們可以簡單地使用angular.element,這樣一來我們的元件同樣能夠很好地執行。
第三,假設這裡必須使用jquery我們的指令才能執行,jqlite(angular.element)總是會自動使用jquery,如果jquery已經載入了話!所以我們不需要使用$,我們只要使用angular.element就可以了。
第四,與第三點類似,jqlite元素沒有必要使用$來進行包裝,傳遞給link函式的element已經是乙個jquery元素了!
還有第五點,這一點我們在前面的小節中沒有提到,那就是我們為什麼要把模板相關的內容混合在我們的**邏輯裡面?
以上指令可以重寫成下面這樣(即使對於非常複雜的情況同樣可以改寫!),改寫之後**極其簡單:
.directive( 'mydirective', function () ;}};
});
關於時間轉換 angularjs
1 angular中我們自己設定的時間filter 獲取時間轉換成指定樣式的filter 其他時間樣式 制定時間樣式 return function input 2 對頁面輸入的日期進行轉換 出生年月時間 var birthdaytime new date scope.birthday gettim...
Jq中的遍歷
向上遍歷樹 parent 返回被選元素的直接父元素 獲取的 父元素 parents 返回被選元素的所有祖先元素,它一路向上直到文件的根元素 獲取的祖先元素 parentsuntil 返回介於兩個指定元素之間的所有祖先元素 獲取的祖先元素 向下遍歷dom樹 children 返回被選元素所有直接子元素...
angularJs中的ng repeat的使用
最近專案中要求做乙個下拉的城市選擇的功能,由於專案使用了angularjs框架,所以自然而然的想到 ng repeat 指令,免去了自己寫迴圈的煩惱。所以總結一下 ng repeat 的使用方法 如下 ng repeat directive 城市選擇 請選擇城市 這應該是最簡單的ng repeat的...