我今天也遇到了同样的问题,不能以promise风格调用
通过wx.showModal调用wx.openSetting的问题,不知道是bug还是官方的本意?以 Promise 风格调用wx.showModal时,无法调用wx.openSetting(),如下所示: wx.showModal({ cancelColor: 'cancelColor', title: '位置授权', content: '小程序获取位置后,可提供更好的服务', confirmText: '去授权', confirmColor: 'green', }).then(res => { if (res.confirm) { console.log('用户点击了“去设置”', res) wx.openSetting() } else if (res.cancel) { console.log('用户点击了“取消”', err) } }) 但是如果回调函数的方式调用wx.showModal时,就可以调用wx.openSetting(),如下所示: wx.showModal({ cancelColor: 'cancelColor', title: '位置授权', content: '小程序获取位置后,可提供更好的服务', confirmText: '去授权', confirmColor: 'green', success(res) { if (res.confirm) { wx.openSetting() } else if (res.cancel) { console.log('用户点击了“取消”', err) } } })
2022-07-13