獲取用戶地理位置,需要用到以下三個api方法:
wx.getSetting() : 獲取用戶的授權列表信息
wx.openSetting():調起客戶端小程序設置界面
wx.getLocation():獲取用戶當前位置
<view bindtap='getCurrentLocal'>獲取當前位置</view>
當用戶點擊“獲取當前位置”時,我們調用 wx.getSetting() 方法來獲取用戶授權相關信息,判斷 wx.getSetting() 方法返回的結果中是否包含地理位置的授權信息。
'scope.userLocation' 字段表示的是地理位置授權,其它api的授權,如獲取用戶信息、相機等其它授權字段,可以查看官網,有對應的文檔,灰機直達 ,具體代碼如下:
// 獲取當前地理位置 授權驗證 getCurrentLocal(){ let that = this; wx.getSetting({ success(res) { if (res.authSetting['scope.userLocation'] == false){// 如果已拒絕授權,則打開設置頁面 wx.openSetting({ success(res) {} }) } else { // 第一次授權,或者已授權,直接調用相關api that.getMyLocation() } } }) }, // 獲取當前地理位置 getMyLocation(){ let that = this wx.getLocation({ type: 'wgs84', success(res) { console.log(res) } }) },