javascript - 如何动态更新 AngularJS 谷歌地图?

标签 javascript angularjs google-maps google-maps-api-3

我目前正在使用 AngularJS Google Maps用于加载给定用户位置的一些标记的插件

加载 map 的“懒惰”方式是使用设置的坐标来定义它,如下所示

<div map-lazy-load="https://maps.google.com/maps/api/js">
  <ng-map center="41,-87" zoom="3"></ng-map>
</div>

当用户拖动 map 或提供他们想要搜索的城市时,我需要更新中心坐标。但是我对如何利用 NgMap 对象来实现这一点感到困惑

  NgMap.getMap().then(function(map) {
    console.log(map.getCenter());
    console.log('markers', map.markers);
    console.log('shapes', map.shapes);
    // Recenter my map here?
  });

我应该首先使用 NgMap 对象创建 map 吗?或者我可以以某种方式使用它来更新我在 html 页面上定义的内容吗?我看到一个属于该对象的 addMap() 函数,但在 API 中没有看到任何有关它的信息

谢谢!

最佳答案

我相信我找到了我需要的东西。工作示例可以在 https://ngmap.github.io/ 找到。

map getMap() 返回的实例功能就是我一直在寻找的。这将是 <ng-map> 的表示你创造。

NgMap.getMap().then(function(map) {
  myMap = map; 
});

关于javascript - 如何动态更新 AngularJS 谷歌地图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45384173/

相关文章:

android - 如何使用 Kotlin 在谷歌地图上添加标记?

javascript - 内部服务器错误(使用 OMDB API 时返回错误)

JavaScript 转义字符

javascript - Angular ng-repeat 值集

javascript - 谷歌地图点击标记打开数据库中的 URL

android api与谷歌地图显示网格

javascript - 在 vanilla Javascript 中以编程方式触发 keydown 事件

javascript - 保持选择值所选选项的颜色

angularjs - 将记录添加到 Firebase 数据库时发送电子邮件

javascript - 找到两个哈希数组的差异