在我的xcode項目中,我有2個視圖控制器:A和B,它們都連接到相同的firebase參考點,並偵聽相同的數據。Swift viewcontroller firebase數據庫觀察者重複調用
我的問題是,例如:如果我在這兩個視圖控制器之間來回切換7次(或者我在A和B視圖控制器之間來回切換的次數),一旦我點擊按鈕執行一個動作,一個火力觀察者被觸發,則觸發視圖控制器A 7次,因爲我在視圖控制器A加入
print("action is triggered")
,並且這條線是打印在調試器的7倍。我一直試圖找出爲什麼7次,計數保存在哪裏?我試圖使用Firebase提供的文檔移除firebase觀察者,但沒有運氣,可能問題來自這些視圖控制器之間來回穿梭。這些視圖控制器從未被刪除,但我永遠不會記得我需要刪除視圖控制器!我嘗試在這裏找到任何討論並將其谷歌,我沒有運氣。
我試圖做的是檢測Firebase數據庫內部的數據更改,如果數據庫中發生了某些變化,按鈕功能發生變化並執行某些不同的功能。一切正常,直到我發現這個循環問題。有沒有其他人遇到同樣的問題?
您可能會在每次顯示控制器時設置新的列表器。你能顯示你的代碼嗎? – VA79