微信小程序之 map 地图使用

时间:2023-12-14 13:33:32

1、在app.json中与pages平级的位置处,加上:

"permission": {
"scope.userLocation": {
"desc": "你的位置信息将用于小程序位置接口展示"
}
},

注意:必须有类似于上面的汉字文字说明。

2、在.wxml中
<button open-type="getUserInfo">允许使用微信昵称等</button>
<button bindtap="getlocation">允许使用位置</button>
<button bindtap="userconfig">设置</button>
<map class='map' id='myMap' longitude="{{longitude}}" latitude="{{latitude}}" scale="{{scale}}"
show-location="true" markers="{{markers}}" bindmarkertap="bindMakertap" bindcontroltap='controlTap'
bindregionchange='regionChange' controls='{{controls}}'
bindtap='bindMapTap'></map>

3、在.js中

 getlocation: function() {
console.log("a")
wx.getSetting({
success(res) {
if (!res.authSetting['scope.userLocation']) {
console.log("not?")
wx.authorize({
scope: 'scope.userLocation',
success() {
// 用户已经同意小程序使用录音功能,后续调用 wx.startRecord 接口不会弹窗询问
//wx.startRecord()
}
})
}else{
console.log("允许",res)
wx.getLocation({
success: function(res) {
console.log(res)
},
})
}
}
})
console.log("b") },
userconfig: function() {
console.log("conf")
// 获取
wx.openSetting({
success(res) {
console.log(res.authSetting)
// res.authSetting = {
// "scope.userInfo": true,
// "scope.userLocation": true
// }
}
})
}

经测试可以取到位置经纬度。

参考:https://www.jianshu.com/p/5b2f95a16fce