我有一個包含幾個刪除按鈕有點像這樣的角度應用:改造「警報()」上刪除按鈕
<button class="btn btn-default" ng-click="delete($index)">x</button>
現在,我們正在接近生產的部署,我想刪除按鈕表現得很好,並「在實際刪除對象之前警告()「用戶。
如何通過指令在所有刪除按鈕中改寫此功能。我想有一個叫「問」的指令:
<button ask class="btn btn-default btn-xs" ng-click="delete($index)">x</button>
我可以用它來影響任何按鈕的行爲。
不知怎的,我不能想通過這個
app.directive("ask", function() {
return function(scope, elems, attrs) {
// what to do here:
// 1. shall I change the elems.attr("ng-click")
// 2. or scope.attrs("ngClick")
????
}
});
請指引我最好的做法以及一些代碼示例。還要注意,所有刪除按鈕的ng-click回調是不同的,應用程序已經廣泛使用了隔離範圍和子範圍指令。
這種方法很好,它也幫助我保留這些按鈕的樣式。爲什麼在這裏需要「$ apply」?即使寫了大約15K行的角碼之後,我在這方面的概念並不明確。 –
因爲我在這裏使用了一個本地事件監聽器('on('click',...')而不執行scope。$ apply angular並不是你希望在修改數組之後更新視圖。運行摘要循環,並在拼接後元素將更新你的列表。如果你選中 - 沒有它的數組修改,但視圖不會退回 –