JS引用高德地图报错: AMap is not defined

我在页面里引用了高德地图的根据输入地点获取经纬度插件,代码如下:

<script type="text/javascript">
	window._AMapSecurityConfig = {
		securityJsCode: '「您申请的安全密钥」',
	}
</script>
<script type="text/javascript"
	src="https://webapi.amap.com/maps?v=2.0&key=您申请的key值&plugin=AMap.Geocoder"></script>
<script type="text/javascript">
	var geocoder = new AMap.Geocoder();
	geocoder.getLocation(
		"北京市朝阳区阜荣街10号",
		function(status, result) {
			console.log(status, result);
			if (status === "complete" && result.geocodes.length) {
				var lnglat = result.geocodes[0].location;
				console.log(lnglat);
			} else {
				console.log("根据地址查询位置失败");
			}
		}
	);
</script>

问题描述

网上查了下问题解决,发现不管是写在body里还是body外面,又或者与其他引用,比如JQuery的顺序先后调整,都是报AMap is not defined这个错。后来经排查发现,我这个页面是属于父子页面中的子页面,引用需要加在父页面中,子页面才能正常使用。

解决方法

将下面这两段js引用放入父页面中,即可使用。

注:需要有申请的KEY值和安全密钥才能使用高德相关功能,光页面引用是无法生效的。

<script type="text/javascript">
	window._AMapSecurityConfig = {
		securityJsCode: '「您申请的安全密钥」',
	}
</script>
<script type="text/javascript"
	src="https://webapi.amap.com/maps?v=2.0&key=您申请的key值&plugin=AMap.Geocoder"></script>
  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值