网友真实露脸自拍10p,成人国产精品秘?久久久按摩,国产精品久久久久久无码不卡,成人免费区一区二区三区

小程序模板網

為什么發getUserInfo不在首頁不起作用

發布時間:2018-06-28 15:34 所屬欄目:小程序開發教程
我分享給別人一個小程序連接,別人點擊手機上分享的連接后,沒有調取小程序app.js中的 wx.getUserInfo方法。請問如何能調取到?或者提供一個改進方案。

我在點擊連接的頁面寫的代碼是,<view class='login_desc'>為了給您更好的服務請先登錄</view>
        <button class='main_btn login_btn' open-type="getUserInfo"bindgetuserinfo="ongetuserinfo">登錄</button>
app.js代碼是
const { request} = require('./utils/request.js')
const { login, getUserInfo} = require('./utils/address.js')

App({
    onLaunch: function (options) {
        // 設備信息
        wx.getSystemInfo({
            success: function (res) {
                console.log(res)
            }
        })
        // 場景值
        // console.log(options.scene)
        // 登錄
        wx.login({
            success: res => {
                // 發送 res.code 到后臺換取 openId, sessionKey, unionId
                const code = res.code;
                // 請求參數
                const url = login;
                const data = {
                    code:code
                };
                const method = 'GET';
                // 獲取 openid and session_key
                request(url, data, method, res=>{
                    // 保存全局
                    this.globalData.session_key = res.data.data;
                    // 調用userInfo
                    this.getUserInfo(res.data.data);
                });
            }
        })
    },
    getUserInfo(session_id){
        // 獲取用戶信息
      console.log(session_id)
        wx.getSetting({
            success: res => {
                if (res.authSetting['scope.userInfo']) {
                    // 這里不能使用util里面的方法,導致了循環引用
                    // 已經授權,可以直接調用 getUserInfo 獲取頭像昵稱,不會彈框
                    wx.getUserInfo({
                        success: res => {
                            // 可以將 res 發送給后臺解碼出 unionId
                            this.globalData.userInfo = res.userInfo
                            console.log(this.globalData.userInfo)
                            // 由于 getUserInfo 是網絡請求,可能會在 Page.onLoad 之后才返回
                            // 所以此處加入 callback 以防止這種情況
                            if (this.userInfoReadyCallback) {
                                this.userInfoReadyCallback(res)
                            }
                            // 由于愚蠢的錯誤
                            const { nickName, gender, avatarUrl, city, country, language, province } = res.userInfo;
                            console.log(session_id)
                            console.log(gender)
                            console.log(avatarUrl)
                            console.log(nickName)
                            console.log(getUserInfo)
                            request(getUserInfo, {
                                sessionId: session_id,
                                gender: gender,
                                headImg: avatarUrl,
                                nickname: nickName,
                            }, 'POST', res => {
                                // 獲取成功
                                console.log(`后臺返回用戶信息${JSON.stringify(res)}`);
                            });
                        }
                    })
                }
            }
        })
    },
    globalData: {
        userInfo: null
    }
})


易優小程序(企業版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://www.xiuhaier.com/wxmini/doc/course/24605.html 復制鏈接 如需定制請聯系易優客服咨詢:800182392 點擊咨詢
QQ在線咨詢
AI智能客服 ×