我需要知道爲什麼AngularJS爲創建的每個模型(ng模型)自動創建監視時使用$ watch函數。 (當我說模型時,我指的是像`$ scope.value =「somethign」edit->聲明的控制器中的一個值,它是通過{{}}或ng-model附加到視圖的)
我的猜測是:
1)當在模型中檢測到的變化來創建複雜的動作是非常有用的。不只是改變視圖中的值。
2)它用於將觀察者添加到未綁定視圖的值作爲模型。 (這可以解決,但這是一個很好的做法嗎?)
這只是我的猜測,我想知道我是否正確。
此外,如果有任何先進的方式來使用$手錶,請告訴請。
謝謝。
我有另一個問題耶穌。當觀察者被自動添加到摘要時會發生什麼情況,但用戶會將另一個觀察者添加到同一個變量中。這對於摘要循環性能不是有害的嗎? –
任何$ watch都會爲頁面增加一次性能。 100手錶不會傷害,也許1000也不會傷害,你只需要讓你的手錶快速,AKA不會給他們帶來沉重的任務。您可以根據需要添加儘可能多的監視器,所有這些監視器都可以運行。在你的情況下,你可以有一個ng模型的$ watch,但也可以在模型更改時觸發另一個監視器。 –