繁体   English   中英

Google Maps for AngularJS不适用于与“ HIDE”和“ SHOW”相关的任何Angular指令

[英]Google Maps for AngularJS does not work with any Angular directives related to “HIDE” and “SHOW”

一旦使用ng-hide或ng-show,AngularJS Google地图库将不起作用,一旦调用了两个显示函数之一,地图将发生以下情况:

在此处输入图片说明

仅当您稍微调整浏览器窗口的大小时才能解决此问题,是否有黑客会采取与调整窗口大小类似的方式来修复JavaScript的此图形问题?

没有hack这个AngularJS谷歌地图库就完全无法实现单页应用程序的目的。

在另一个类似的stackoverflow问题中,解决方案是向此map标签添加ng-cloak指令:

<map ng-cloak zoom="10" style="visibility:hidden; z-index:1000; width:900px; height:300px; display:inline-block;" width="1600" height="1600"/>

但是我已经尝试过了,但它绝对不起作用。 也许我可以做类似$rootScope.map.width = z; ???

您如何使用JavaScript立即复制窗口调整大小的修复程序? 或者,我想有一个更好的问题是,尽管事实破损,您如何才能使该库正常工作。

除非已修复此问题,并使用临时破解来解决图形错误,否则此Angular库将无法工作。

尝试使用data-ng-if代替ng-hide或ng-show。

  1. 使用ng-if代替ng-show。 ng-if将呈现html,但ng-show仅隐藏标签。
  2. 使用uiGampIsReady强制调整地图大小:

    uiGmapIsReady.promise()。then(function(){var map = $ scope.map.control.getGMap(); google.maps.event.trigger(map,'resize');});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM