这篇文章主要介绍微信小程序怎么获取用户地理位置名称,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
从事服务器机柜租用,服务器租用,云主机,虚拟主机,国际域名空间,CDN,网络代维等服务。
准备
1、在http://lbs.qq.com/网站申请key
2、在微信小程序后台把apis.map.qq.com添加进request合法域名
效果
添加封装
/** * 发起网络请求 * @param {string} url * @param {object} params * @return {Promise} */ static request(url, params, method = "GET", type = "json") { console.log("向后端传递的参数", params); return new Promise((resolve, reject) => { let opts = { url: url, data: Object.assign({}, params), method: method, header: { 'Content-Type': type }, success: resolve, fail: reject } // console.log("请求的URL", opts.url); wx.request(opts); }); }; /** * 获取用户中心位置经纬度 * @param {ctx} name */ static getCenterLocation(name) { return new Promise((resolve, reject) => name.getCenterLocation({ success: resolve, fail: reject })); }
如果已经存在,则不用添加
js
let app = getApp(); let wechat = require("../../utils/wechat"); Page({ onReady(e) { let mapCtx = wx.createMapContext('myMap'); setTimeout(() => { mapCtx.moveToLocation(); }, 1000); setTimeout(() => { this.getAddress(mapCtx); }, 2000); }, getAddress(mapCtx) { wechat.getCenterLocation(mapCtx) .then(d => { console.log(d); let { latitude, longitude } = d; console.log("当前位置纬度", latitude, "当前位置经度", longitude); let url = `https://apis.map.qq.com/ws/geocoder/v1/`; let key = 'XXXXX-D6FAD-RSG4U-HBE6F-NVFNK-XXXXX'; let params = { location: latitude + "," + longitude, key } return wechat.request(url, params); }) .then(d => { console.log(d); console.log("当前地址", d.data.result.address); }) .catch(e => { console.log(e); }) } })
html
css
page{ height: 100%; } #myMap{ width: 100%; height: 100%; }
以上是“微信小程序怎么获取用户地理位置名称”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!