不是。官方聲明:一個 Watch 事件是一個一次性的觸發器,當被設置了 Watch
的數據發生了改變的時候,則服務器將這個改變發送給設置了 Watch 的客戶端,
以便通知它們。
為什么不是永久的,舉個例子,如果服務端變動頻繁,而監聽的客戶端很多情況
下,每次變動都要通知到所有的客戶端,給網絡和服務器造成很大壓力。
一般是客戶端執行 getData(“/節點 A”,true),如果節點 A 發生了變更或刪除,
客戶端會得到它的 watch 事件,但是在之后節點 A 又發生了變更,而客戶端又沒
有設置 watch 事件,就不再給客戶端發送。
在實際應用中,很多情況下,我們的客戶端不需要知道服務端的每一次變動,我
只要最新的數據即可。