2015-02-06 136 views
-1

我正在嘗試首次使用Angular,並使用以下庫https://github.com/angular-ui/angular-google-maps角度模型更新

我的問題是,當我推新標記到我的數組$ scope.marker,地圖指令不會更新以顯示地圖上添加的標記(現有標記正確顯示)。

我相當確定問題是因爲在推送新元素時marker數組仍然指向相同的引用,導致相關的偵聽器未被觸發。我試圖通過向服務器發起一個新請求來重新設置$ scope.marker來證明這一點,但這看起來效率不高。

有沒有合適的解決方案有基於對象平等指令更新失敗,我已經看到了angular.copy一些文件可能會做什麼,我需要

+1

我們可以看到一些代碼嗎? – 2015-02-06 14:10:58

回答

0

沒有看到一個單一的代碼行,這是很難給出100%準確的答案,但聽起來您需要在推送新標記後強制範圍摘要循環。

因此,無論是使用$scope.$apply()還是將推送代碼包裝在$timeout回調中,並且您都應該使用新標記強制更新地圖。

+0

我試過使用$ scope。$ apply()沒有任何運氣,我以爲這可能是因爲數組仍然是同一個實例?編輯 - 實際上使用$ scope。$ apply()導致出現以下錯誤'錯誤:[$ rootScope:inprog] $摘要已在進行中' – 2015-02-06 13:55:23

+0

實際上,我試圖通過強制摘要循環來解決這個問題。嘗試將其包裝在$超時回調中。 – Shomz 2015-02-06 14:20:10

+0

你能告訴我一個什麼樣的例子嗎? – 2015-02-06 22:00:20