場景:微信小程序收貨地址,導(dǎo)航地址,定位等需求
微信開發(fā)者工具示例:

手機(jī)調(diào)試示例:

附上完整代碼(在程序里寫入這個(gè)方法,寫點(diǎn)擊事件直接進(jìn)行方法調(diào)用,會(huì)自動(dòng)喚起微信地圖頁面,如上圖所示):
getMapLocation() {
uni.chooseLocation({
success: (res) => {
console.log(res);
// this.getRegionFn(res);
// this.mapName = res.address
// this.detailAddress = res.name
console.log(this.mapName)
},
fail: () => {
// 如果用uni.chooseLocation沒有獲取到地理位置,則需要獲取當(dāng)前的授權(quán)信息,判斷是否有地理授權(quán)信息
uni.getSetting({
success: (res) => {
console.log(res);
var status = res.authSetting;
if (!status['scope.userLocation']) {
// 如果授權(quán)信息中沒有地理位置的授權(quán),則需要彈窗提示用戶需要授權(quán)地理信息
uni.showModal({
title: "是否授權(quán)當(dāng)前位置",
content: "需要獲取您的地理位置,請確認(rèn)授權(quán),否則地圖功能將無法使用",
success: (tip) => {
if (tip.confirm) {
// 如果用戶同意授權(quán)地理信息,則打開授權(quán)設(shè)置頁面,判斷用戶的操作
uni.openSetting({
success: (
data) => {
// 如果用戶授權(quán)了地理信息在,則提示授權(quán)成功
if (data
.authSetting[
'scope.userLocation'
] ===
true) {
uni.showToast({
title: "授權(quán)成功",
icon: "success",
duration: 1000
})
// 授權(quán)成功后,然后再次chooseLocation獲取信息
uni.chooseLocation({
success: (
res
) => {
// this.mapName =res.addres
// this.detailAddress = res.name
}
})
} else {
uni.showToast({
title: "授權(quán)失敗",
icon: "none",
duration: 1000
})
}
}
})
}
}
})
}
},
fail: (res) => {
uni.showToast({
title: "調(diào)用授權(quán)窗口失敗",
icon: "none",
duration: 1000
})
}
})
}
});
},
在調(diào)試過程中遇到位置授權(quán)問題,部分手機(jī)無法展示頁面,一直停留在位置隱私等管理頁面,暫時(shí)解決方案:(開發(fā)者工具基礎(chǔ)庫改為支持該方法的最低版本,具體問題具體分析吧);文章來源:http://www.zghlxwxcb.cn/news/detail-520882.html
如果報(bào)錯(cuò) chooseLocation is not function,需要登錄微信開發(fā)者官網(wǎng)查看是可使用這個(gè)api。文章來源地址http://www.zghlxwxcb.cn/news/detail-520882.html

到了這里,關(guān)于微信小程序獲取當(dāng)前位置,支持位置搜索,拖拽定位的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!