|
分享者:秋子,原文地址
一:用戶拒絕授權(quán)使用 wx.openSetting({}) 重新調(diào)起授權(quán)用戶信息
場景模擬:
用戶進入微信小程序-程序調(diào)出授權(quán)

選擇拒絕之后,需要用到用戶授權(quán)才能正常使用的頁面,就無法正常使用了。
解決方法:
在用戶選擇拒絕之后,彈窗提示用戶 拒絕授權(quán)之后無法使用,讓用戶重新授權(quán)(微信小程序在第一次調(diào)起授權(quán)之后 ,要重新再調(diào)起,需要自己手動刪除程序 或者是退出小程序 等待一段時間再進去才能調(diào)起授權(quán),這種情況用戶體驗比較差)針對用戶拒絕授權(quán)這種情況 監(jiān)聽 wx.getUserInfo -fail的回調(diào)使用 wx.showModal 提示用戶 如圖:

監(jiān)聽 wx.showModal confirm 調(diào)起設置管理 代碼如下:
-
wx.openSetting({
-
success:function(res){
-
if (!res.authSetting["scope.userInfo"] || !res.authSetting["scope.userLocation"]) {
-
//這里是授權(quán)成功之后 填寫你重新獲取數(shù)據(jù)的js
-
//參考:
-
that.getLogiCallback('', function(){
-
callback('')
-
})
-
}
-
}
-
})

設置管理界面:

選擇之后 就能重新成功獲取用戶的信息了
二:掃碼進入小程序獲取二維碼攜帶參數(shù)
注:小程序內(nèi)跳轉(zhuǎn)地址攜帶參數(shù)和掃碼進入鏈接攜帶參數(shù) 獲取方式不一樣 微信通過掃碼進入小程序-頁面得到鏈接的參數(shù)為 options.q 掃碼進入的鏈接都是亂碼的,需要UrlDecode一次。 代碼: var src = decodeURIComponent(options.q) 通過正則截?。耗硞€字符串和某個字符串之間的內(nèi)容 src.match(/ id=(S*)&share=1/)1
|