2014-10-02 62 views
3

使用「後退」按鈕導航迴帶有使用Fusion Table圖層的Google地圖的頁面時,我在Ember應用程序中遇到了一些問題。在一個新的頁面加載,這是它的外觀:單擊Ember上的「上一步」按鈕後,Google地圖調整大小無法正常工作

On fresh page load

點擊其中一個銷和去另一種觀點認爲,當我點擊後退按鈕後,會發生以下情況:

After clicking back

灰色條的大小和位置各不相同。

我試過做google.maps.event.trigger(map, 'resize'),並呼籲map.setZoom(map.getZoom())沒有任何效果。我確定容器也有寬度/高度。

要澄清一下,這是一個Ember應用程序,所以點擊後退按鈕並不是一個完整的頁面重新加載,而只是換掉Ember控制器/視圖。我希望只需要在這樣的轉換中觸發調整大小,但調整大小似乎還不夠,即使直接從控制檯調用。

還有一件事,其他轉換到頁面(例如通過點擊觸發地圖上的link-totransitionTo的其他元素)可以正常工作。只有當後退按鈕發生轉變時,地圖纔會出錯。

任何想法?

回答

0

我只記得我實際上設法「解決」了這個問題,但從未到處發佈答案。

發生了什麼事在我的情況是,我用的是試圖通過它連接到body標籤圍繞保持地圖畫布視圖時在willDestroyElementremoved,然後移動它放回優化渲染時間碼在didInsertElement中再次查看loaded時查看視圖。顯然谷歌地圖沒有它。所以我最終分解了代碼並進行了更新,以便丟棄地圖並在顯示視圖時創建新實例。

相關問題