页面({
Authorize(auth) {
return(new promise(async(resolve,reject))={
Try {
constauthorizeres=awaitwx . authorize({
Scope: 'scope . 'auth
})
if===' authorize : ok ')resolve(true)
} catch (err) {
Reject(真)
}
}))
},
FormatPromise(promise) {
If(!Promise ||!promi(promise){
Return new promise ((resolve,reject)={
reject(new error(' requires promises as the param '));
})。catch((err)={
Return [err,null];
});
}
Return (function() {
return[空,Arguments];
})。catch(err={
Return [err,null];
});
},
Async onLoad() {
//注意事项:
/*
1、获取用户的当前设置。返回值仅显示小程序请求用户的权限。
constgetsettingres=awaitwx . get setting()
GE[']====true
现在,wx.getSetting获得的总是true,因此可以借用wx.authorize来决定是否许可
*/
//验证您是否有权获取用户信息
(async ()={
Const [rejected,allowed]=await ('userinfo ')
Const content=allowed?是否有权通过查看授权列表“:”获取用户信息”
Wx.showModal({
题目:“温馨提示”,
内容,
//getUserProfile或openSetting方法仅支持回调内部符号,不支持Promise符号。这可能是因为promise是宏操作
Success: async RES={
If allowed) {
constopensettingres=awaitwx . opensetting()
Con(openSettingRes)
}
If rejected) {
constgetuserprofileres=awaitwx . getuserprofile({
Desc:“您同意获取信息吗?”
})
getuser profileres(con)
}
}
})
})();
//确认您有权获取用户位置信息
(async ()={
/*
弹出是否会带来地理位置。
注意:a必须添加以下代码:
Permission' {
; {
desc“:”位置信息用于显示小程序位置界面的效果。
}
}
*/
Const [rejected,allowed]=await ('user location ')
Const content=allowed?是否获得位置信息“:”是否确认获得地址位置的批准”
Const getLocation=async ()={
constgetlocationres=awaitwx . get location()
Return getLocationRes
}
Wx.showModal({
题目:“温馨提示”,
内容,
//openSetting方法仅支持回调内部符号,不支持Promise符号。这可能是因为promise是宏操作
Success: async RES={
If allowed) {
constgetlocationres=awaitgetlocation()
getLocationRes(con)
}
If rejected) {
constopensettingres=awaitwx . opensetting()
Con(openSettingRes)
if[']) {
constgetlocationres=awaitgetlocation()
getLocationRes(con)
}
}
}
})
})();
}
})