//const app = require('../../js/api'); import api from '../../js/api' // pages/login/login.js Page({ /** * 页面的初始数据 */ data: { userInfo: {} }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { }, handleAuthLogin(e) { console.log('一键授权登录按钮被点击', e); wx.showLoading({ title: '正在登录中...', }) if (e.type == "getphonenumber") { console.log("添加手机信息",this.data.userInfo) var user = { UserName: this.data.userInfo.UserName, UserAvatarUrl: this.data.userInfo.UserAvatarUrl, UserPhoneNumber: '', Address: '', encryptedData: e.detail.encryptedData, iv: e.detail.iv }; this.setData({ userInfo: user }) this.toLogin() } if (e.type == "tap") { console.log("添加用户信息",this.data.userInfo) // 获取用户信息授权 const that = this; wx.getUserProfile({ desc: '用于完善用户资料', // 声明获取用户信息的目的 success(res) { console.log('用户信息:', res.userInfo); var user = { UserName: res.userInfo.nickName, UserAvatarUrl: res.userInfo.avatarUrl, UserPhoneNumber: '', Address: '', encryptedData: that.data.userInfo.encryptedData, iv: that.data.userInfo.iv }; that.setData({ userInfo: user }) that.toLogin() // 将用户信息发送到服务器 // 例如:wx.request({ url: 'https://example.com/userInfo', data: res.userInfo }) }, fail(err) { console.error('获取用户信息失败:', err); wx.hideLoading() }, }); } }, toLogin() { if(!this.cheackUserInfo()) { console.log("userInfo 信息不全",this.data.userInfo) wx.hideLoading() return } // 调用微信登录接口 var that = this; wx.login({ success(res) { if (res.code) { console.log('登录成功,code:', res.code); api.request_Wechatlogin(res.code) .then(res => { console.log("获取wid", res.data.data) wx.setStorageSync('WachatID', res.data.data) console.log("传递的userInfo", that.data.userInfo) return api.request_AddMiniprogramUser(that.data.userInfo) }).then(res => { console.log("添加user", res) wx.hideLoading() wx.redirectTo({ url: '../scan/scan', }) }).catch(err => { console.log("报错", res) wx.hideLoading() }); } else { wx.hideLoading() console.log('登录失败:', res.errMsg); } }, fail(err) { wx.hideLoading() console.error('登录接口调用失败:', err); }, }); }, cheackUserInfo(){ var userInfo = this.data.userInfo; return userInfo.UserAvatarUrl != '' && userInfo.UserAvatarUrl != undefined && userInfo.UserName != '' && userInfo.UserName != undefined && userInfo.encryptedData != '' && userInfo.encryptedData != undefined && userInfo.iv != '' && userInfo.iv != undefined } })