WeChatウィジェットのライセンス
9868 ワード
公式ドキュメント
ライセンスインタフェースの一部は、呼び出すにはユーザーのライセンス同意を得る必要があります.これらのインタフェースを使用範囲別に複数のscopeに分け、ユーザーはscopeを許可することを選択し、1つのscopeに許可した後、対応するすべてのインタフェースを直接使用することができます.このようなインタフェースの呼び出し時:ユーザーがこの権限を受け入れていないか拒否した場合、窓を弾いてユーザーに尋ね、ユーザーは同意をクリックしてインタフェースを呼び出すことができる.ユーザーが許可されている場合は、インタフェースを直接呼び出すことができます.ユーザーがライセンスを拒否した場合、ポップアップウィンドウは表示されず、インタフェースfailコールバックに直接アクセスします.開発者は、ユーザーが許可を拒否したシーンと互換性を持ってください.
ウィジェットユーザー情報コンポーネントのサンプルコード(公式ドキュメント)
promiseパッケージを使用したwxリクエスト
ライセンスインタフェースの一部は、呼び出すにはユーザーのライセンス同意を得る必要があります.これらのインタフェースを使用範囲別に複数のscopeに分け、ユーザーはscopeを許可することを選択し、1つのscopeに許可した後、対応するすべてのインタフェースを直接使用することができます.このようなインタフェースの呼び出し時:ユーザーがこの権限を受け入れていないか拒否した場合、窓を弾いてユーザーに尋ね、ユーザーは同意をクリックしてインタフェースを呼び出すことができる.ユーザーが許可されている場合は、インタフェースを直接呼び出すことができます.ユーザーがライセンスを拒否した場合、ポップアップウィンドウは表示されず、インタフェースfailコールバックに直接アクセスします.開発者は、ユーザーが許可を拒否したシーンと互換性を持ってください.
ウィジェットユーザー情報コンポーネントのサンプルコード(公式ドキュメント)
Page({
data: {
canIUse: wx.canIUse('button.open-type.getUserInfo')
},
onLoad: function() {
//
wx.getSetting({
success (res){
if (res.authSetting['scope.userInfo']) {
// , getUserInfo
wx.getUserInfo({
success: function(res) {
console.log(res.userInfo)
}
})
}
}
})
},
bindGetUserInfo (e) {
console.log(e.detail.userInfo)
}
})
promiseパッケージを使用したwxリクエスト
othersRequest(type) {
return new Promise((resolve, reject) => {
wx[type]({
success: (res => {
resolve(res); }),
fail: (res => {
reject(res) }) }) }) },
checkAuthorize() { return request.othersRequest('getSetting').then(res => { if (res.authSetting['scope.userInfo']) { app.globalData.isAuthorization = true; this.getUserInfo(); apiService.wechatLogin(); } else { app.globalData.isAuthorization = false; } }).catch(err => { request.errorHander(err); }) },
getUserInfo() { return request.othersRequest('getUserInfo').then(res => { const userInfo = this.refactorUserInfo(res.userInfo); app.globalData.userInfo = userInfo; this.setUserInfo(userInfo);
}).catch(err => { request.errorHander(err); }) },
wechatLogin() {
return request.othersRequest('login').then(res => { globalData.wxLoginCode = res.code;
})
.catch(err => {
this.errorHander(err); }) },