2013-02-26 69 views
1

有沒有辦法訪問角度$ watch迭代器?

我想通過$手錶這樣捕捉到的第一次迭代:

scope.$watch("var", myFunc); 

myFunc() { 
    if (iterator === 1) ... 
} 

回答

5

您的手錶功能會得到兩個參數,「VAR」和前值的電流值。當你的手錶觸發第一個時,這兩個都是一樣的,所以你可以檢查它是否是第一次被調用。像這樣:

var myFunc = function(value, oldValue) { 
    if (value === oldValue) { 
     // First run 
    } 
} 
+0

這是有幫助的,但更直接的問題 - 是否沒有暴露的$ watch函數的迭代器?我只需要創建自己的? – Dustin 2013-02-27 14:55:03

+0

Angular並沒有給你一個計數器,表明手錶執行了多少次,我不知道你爲什麼需要它。 – 2013-02-27 15:15:16