微信H5页面跳转到腾讯地图

1.先引入JS

注意:如果是 vue 项目,在 index.html 文件中引入 js 文件。
不是 vue 项目,直接在 html 页面中引入 js 文件。
没有key的话可以去官网申请:https://lbs.qq.com/

<script charset="utf-8" src="https://map.qq.com/api/js?v=2.exp&key=你的Key"></script>

2.封装方法

如果不是 vue 项目:

<script>
	var geocoder = new qq.maps.Geocoder();
	function getLal (address) {
		//对指定地址进行解析
		geocoder.getLocation(address);
		//设置服务请求成功的回调函数
		geocoder.setComplete((res) => {
            console.log(address + '成功回调数据',res);
		});
		//若服务请求失败,则运行以下函数
		geocoder.setError((err) => {
			console.log(address + '地址输入错误',err)
		})
	}
	getLal('广东省佛山市')
	//getLal('广东省')
</script>

如果是 vue 项目:
1.抛出封装的方法

export const commonMethods = {
    //根据地址获取经纬度
    getLal: (address,cb) => {
      var geocoder = new qq.maps.Geocoder();
      geocoder.getLocation(address);
      geocoder.setComplete(function(res) {
          cb(res)
      });
      geocoder.setError(function(err) {
          cb(err)
      });
    }
}

2.vue文件引入并使用

import {  commonMethods } from "@/utils/utils";
commonMethods.getLal('广东省佛山市',(res) => {
	console.log('res',res)
        var mapData = {
          lat: res.detail.location.lat,
          lng: res.detail.location.lng,
          organName: this.organName,
          address: this.address,
        };
        this.goMap(mapData);
})

3.跳页面

直接使用 window.open跳就行了,会根据经纬度自动定位到你查地址的那个点


    goMap(option) {
      // 打开腾讯地图
      let lat = option.lat;
      let lng = option.lng;
      let organName = option.organName;
      let address = option.address;
      var mapUrl_tx =
        "http://apis.map.qq.com/uri/v1/marker?marker=coord:" +
        lat +
        "," +
        lng +
        ";title:" +
        organName +
        ";addr:" +
        address +
        "&referer=yellowpage";
      window.open(mapUrl_tx); //打开新页面
    },
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值