插入后,Google Maps Engine图层会刷新

时间:2014-06-21 08:45:12

标签: google-maps google-maps-engine

我有一个我已添加的Google地图和MapsEngineLayer(我也尝试使用DynamicMapsEngineLayer,你可以在这里查看两个代码:https://developers.google.com/maps/documentation/javascript/mapsenginelayers)。在网站上 - HTML和Javascript - 我有一个编辑按钮,我可以通过Google Maps Engine API更改某些功能的某些属性或向该图层的数据源添加新功能(几何图形)。这些插入是通过对php的ajax调用(类似于https://developers.google.com/maps-engine/documentation/feature-create)。

所有身份验证都是作为服务帐户进行的,因此图层和API的令牌有效期为3600秒。

插入/更新后,地图上没有任何内容,但是,如果我打开一个新的私人窗口,则所有修改都在那里。

哪种方法可以完全强制刷新MapsEngineLayer,还是仅强制刷新受该插入影响的磁贴?

插入之后我已经尝试了:

mapsEngineLayer.unbindAll();
mapsEngineLayer.setMap(null);
mapsEngineLayer = null;

我可以使用GeoJSON重新读取所有功能,但数据库有很多功能。

1 个答案:

答案 0 :(得分:1)

尝试此操作以强制重新加载图层而不会破坏整个地图:

layer.setMap(null);
delete layer;
layer = new google.maps.visualization.MapsEngineLayer({ layerId: ... });
layer.setMap(map);

这也适用于DynamicMapsEngineLayer。