(1)コード:ユーザ情報取得部は、説明します
OnLaunch:関数(){ // ローカルストレージ能力示す varが wx.getStorageSync =(ログオン' ログ')|| [] logs.unshift(Date.now()) wx.setStorageSync(' ログ' 、ログ) // ログイン wx.login({ 成功:RES => { // バック交換res.codeのOpenID、SESSIONKEY、unionidに送る } }) // ユーザ情報取得 wx.getSetting({ 成功:RES => { IF(res.authSetting [ ' scope.userInfo ']){ // 承認している、あなたは直接ブロック再生することはできません、取得getUserInfoヘッドニックネームを呼び出すことができ wx.getUserInfoを({ 成功:RES => { // バックデコード解像度へ送らunionidすることができる 。この .globalData.userInfoの=の解像度を。ユーザー情報は、 // getUserInfoネットワーク要求するので、Page.onLoadまで戻らないことがあり // ので、ここで、このコールバックを防止するために添加される IF(この.userInfoReadyCallback){ この.userInfoReadyCallback(RES) } } }) } } } )
onLaunch小さなライフサイクル---小さなプログラムの初期化
(2)取得したユーザデータ
wx.getSetting({...})またはwx.openSetting({...})
開発者は、設定インターフェイスが認証を開くようにユーザーを誘導開くwx.openSettingを呼び出すことができます
パラメータ:
obj.success成功コールバック関数のパラメータ:
wx.openSetting({
成功:関数(RES){
}
})
或者
wx.openSetting({
成功=> RES {
}
})
AuthSetting
ユーザー認証の設定情報
範囲 | 対応インターフェース | 説明 |
---|---|---|
scope.userInfo | wx.getUserInfo | ユーザー情報 |
scope.userLocation | wx.getLocation、 wx.chooseLocation | 場所 |
scope.address | wx.chooseAddress | アドレス |
scope.invoiceTitle | wx.chooseInvoiceTitle | インボイス |
scope.invoice | wx.chooseInvoice | 請求書を取得します |
scope.werun | wx.getWeRunData | ステップの移動マイクロチャネル番号 |
scope.record | wx.startRecord | レコーディング機能 |
scope.writePhotosAlbum | wx.saveImageToPhotosAlbum、 wx.saveVideoToPhotosAlbum | アルバムに保存 |
scope.camera | カメラ アセンブリ | カメラ |
コード:
// ユーザ情報取得 wx.openSetting({
/ *インタフェース呼出成功コールバック関数* / RES:成功 => {
/ *成功成功コールバック関数パラメータ:* / authorSettingオブジェクト
/ * authSettingつのオブジェクトのプロパティを:scope.userInfoを許可されたユーザ情報* / のiF(res.authSetting [ ' scope.userInfo ' ]){ /*scope.userInfo(ユーザ認可情報は、対応するインタフェースwx.getUserInfoか)* /
wx.getUserInfo({ }) } } })
(3)ユーザ情報を取得します
ユーザー情報を取得するためのwx.getUserInfo(Objectオブジェクト)
パラメータ:
コールバック関数のパラメータobject.success
// 获取用户信息 wx.openSetting({ success: res => { if (res.authSetting['scope.userInfo']) { // 必须是在用户已经授权的情况下调用 wx.getUserInfo({ success: res => { // globalData函数设置全局变量,方便其他页面调用。 this.globalData.userInfo = res.userInfo // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回 // 所以此处加入 callback 以防止这种情况 if (this.userInfoReadyCallback) { this.userInfoReadyCallback(res) } } }) } } })
globalData函数设置全局变量,详见下篇文章使用globalData函数设置全局变量
.