微信小程序-选择经纬度
wx.chooseLocation() 获取的是腾讯地图的经纬度,可按开发需要转换为系统所用地图(百度,高德等)经纬度。
转换经纬度:https://www.cnblogs.com/czhowe/p/16423928.html
getLandmarkfun() { //店铺经纬度 let that = this; var latitude = null, longitude = null; if (!common.isEmpty(this.data.storeInfo) && !common.isEmpty(this.data.storeInfo.landmark)) { var landArr = this.data.storeInfo.landmark.split(','); var txMapObj = common.bdMapToTxMap(landArr[0], landArr[1]); //百度地图经纬度转为腾讯地图经纬度 latitude = txMapObj.lat; longitude = txMapObj.lng; that.getWXchooseLocation(latitude, longitude); } else { wx.getLocation({ type: 'gcj02', //返回可以用于wx.openLocation的经纬度 success: function (res) { // console.log(res) latitude = res.latitude; longitude = res.longitude; that.getWXchooseLocation(latitude, longitude); } }) } }, getWXchooseLocation(latitude, longitude) { //选择经纬度 wx.chooseLocation({ latitude, longitude, success: function (res) { // console.log(res) var bdMapObj = common.txMapToBdMap(res.latitude, res.longitude); //腾讯地图转百度地图经纬度 var locationStr = that.getMapSubStr(bdMapObj.lat) + ',' + that.getMapSubStr(bdMapObj.lng); //保留经纬度小数点后6位 that.setData({ ['storeInfo.landmark']: locationStr, ['storeInfo.landmarkAddress']: res.address }) }, fail: function (res) { // console.log(res) } }) },
当latitude, longitude不传时,可能定到海上去
效果如下: