handleChooseAddress(){
// 获取权限
wx.getSetting({
success:(result)=>{
//获取权限状态
const scopeAddress=result.authSetting["scope.address"];
if(scopeAddress===true||scopeAddress===undefined){
wx.chooseAddress({
success: (result1) => {
console.log(result1);
},
})
} else{
// 用户之前拒绝过需要诱导用户打开权限
wx.openSetting({
success:(result2)=>{
wx.chooseAddress({
success: (result3) => {
console.log(result3);
},
})
}
})
}
}
})
}
将以上代码进行promise打包
export const getSetting=()=>{
return new Promise((resolve,reject)=>{
wx.getSetting({
success:(result)=>{
resolve(result)
},
fail:(err)=>{
reject(err)
}
})
})
}
export const chooseAddress=()=>{
return new Promise((resolve,reject)=>{
wx.chooseAddress({
success:(result)=>{
resolve(result)
},
fail:(err)=>{
reject(err)
}
})
})
}
export const openSetting=()=>{
return new Promise((resolve,reject)=>{
wx.openSetting({
success:(result)=>{
resolve(result)
},
fail:(err)=>{
reject(err)
}
})
})
}
const res1=await getSetting();
const scopeAddress=res1.authSetting["scope.address"];
if(scopeAddress===true||scopeAddress===undefined){
const res2=await chooseAddress();
console.log(res2);
}else{
await openSetting;
const res2=await chooseAddress();
console.log(res2);
}