angular - 如何使用谷歌地图根据获取的纬度和经度定位地图
问题描述
我已经使用 placeAPI 来获取纬度和经度并尝试将其与地图绑定,但我遇到了问题,因为找不到 null 的 gmapElement。我在这里粘贴我的演示。
在这里,我使用 placesAPI 来获取 lat 和 lon 值,并且我将这些值分配为 lat 和 lon,但我希望这些 lat 和 lon 值也可以通过给定的地址获取 lat 和 lon 值。
TS:
var map = new window['google'].maps.Map(this.gmapElement.nativeElement, {
center: {lat: -33.867, lng: 151.195},
zoom: 8
});
var request = {
query:geoAddress,
fields: ['name', 'geometry'],
};
错误:
Cannot read property 'gmapElement' of null
HTML:
<div class="row mt-5" [hidden]="!map">
<div class="col-md-9 mx-auto">
<h2 class="text-left">Google Map</h2>
<div class="card mt-3">
<div class="card-body">
<div #mapRef style="width:100%;height:400px"></div>
</div>
</div>
</div>
</div>
解决方案
我已经解决了你的问题。并创建了演示,请检查并验证。您在 service.findPlaceFromQuery() 函数中的 this 范围已更改,因此您收到了该错误。
推荐阅读
- whmcs - WHMCS:如何在可配置选项中添加域检查器
- javascript - 如何设置边界框的最小距离?
- php - 通过 URL 中的参数推送 CSS(路径)
- kubernetes - 将 EC2 上的文件夹添加为 EKS 集群上的卷
- reactjs - 在下载 react pacakge 时,我没有得到 src gitnore 和其他一些文件
- java - Mockito 实例间谍对内部和外部调用的工作方式不同
- javascript - 在对象字面量函数中需要等效于 switch case 的默认值
- unity3d - UnityHub 选项“Unity 编辑器文件夹”无效。想要更改 Unity 编辑器的安装位置?
- bash - 从 Bash 脚本启动时的不同版本的 Vim
- google-apps-script - 如何使用 Sheets API 在最后一列之后插入列?