gpt4 book ai didi

google-maps-api-3 - 单击 Ember 上的“后退”按钮后,谷歌地图调整大小不起作用

转载 作者:行者123 更新时间:2023-12-04 09:02:54 26 4
gpt4 key购买 nike

我在 Ember 应用程序中遇到了一些问题,当我使用“后退”按钮导航回具有使用 Fusion Table 层的 Google map 的页面时。在新页面加载时,它是这样的:

On fresh page load

单击其中一个图钉并转到另一个 View 后,当我单击后退按钮时,会发生以下情况:

After clicking back

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

我试过执行 google.maps.event.trigger(map, 'resize') 并调用 map.setZoom(map.getZoom()) 到 no影响。我已确保容器也具有宽度/高度。

需要说明的是,这是一个 Ember 应用程序,因此单击后退按钮并不是整个页面重新加载,而只是 Ember 换出 Controller / View 。我希望只需要在这种过渡时触发调整大小,但调整大小似乎还不够,即使直接从控制台调用也是如此。

还有一件事,页面的其他转换(例如,通过单击触发 link-totransitionTo 到 map 的其他元素)工作正常。只有当使用“后退”按钮进行转换时, map 才会出错。

有什么想法吗?

最佳答案

我只记得我实际上设法“解决”了这个问题,但一直没有时间发布答案。

在我的案例中发生的事情是,当 View 为 removed 时,我使用的代码试图通过将 map Canvas 附加到 body 标记来优化渲染时间。在 willDestroyElement 中,然后在 View 为 loaded 时将其移回 View 中再次在 didInsertElement 中。显然谷歌地图没有。所以我最终 fork 代码并进行更新,以便丢弃 map 并在显示 View 时创建一个新实例。

关于google-maps-api-3 - 单击 Ember 上的“后退”按钮后,谷歌地图调整大小不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26166412/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com