⼩程序登录集成代码,可直接使⽤,带推荐分享下级在app.js⾥的onLaunch⾥写⼊下⾯代码
wx.login({
success: res =>{
//存储登录code,提交给后台获取登录数据
wx.setStorageSync('wx_login', de);
}
})
公共⽅法代⼊
const login=({
success
})=>{
return new Promise(function(resolve, reject){
//判断是否存在登录状态,存在则直接返回成功
StorageSync('access_token')!=''){
success([]);
return true;
}
wx.showLoading({
title:'授权中',
mask:true
})
desc:'获取⽤户信息',
success:function(e){
var data ={};
//获取缓存中的登录code
data['code']= wx.getStorageSync('wx_login');
data['iv']= e.iv;
data['encryptedData']= e.encryptedData;
//存在上级分享token//可以是存储的上级⽤户ID
StorageSync('share_token')!=''){
代码转换data['share_token']= wx.getStorageSync('share_token');
}
/
/传⼊后台解析数据并储存
url:'auth/member_oauth',
data: data,
success:function(res){
de ==1){
//存储登录状态token 或者⽤户ID
wx.setStorageSync('access_token', res.data.user_token);
//因为code已经失效,所以重新存储登录code
wx.login({
success: res =>{
wx.setStorageSync('wx_login', res
.code);
wx.hideLoading({
success:(res)=>{},
})
wx.showToast({
title:'授权成功',
icon:'none'
})
}
})
success(res);
}else{
wx.hideLoading({
success:(res)=>{},
})
})
//登录失效,重新获取登录code
wx.login({
success: res =>{
wx.setStorageSync('wx_login', res
.code);
wx.hideLoading({
success:(res)=>{},
})
wx.showToast({
title:'授权登录失败,请重新授权',
icon:'none'
})
}
})
}
}
})
},
fail:function(){
wx.hideLoading({
success:(res)=>{},
})
//拒绝登录,重新获取登录code
wx.login({
success: res =>{
wx.setStorageSync('wx_login', de);      wx.hideLoading({
success:(res)=>{},
})
wx.showToast({
title:'您取消了授权',
icon:'none'
})
}
})
}
})
}).catch({})
}
/
* 公共showTotast  loading ⽅法 */ ports ={
login: login
}
在其他⽂件使⽤⽅法
我将公共⽅法放⼊init.js中
const init =require('../../utils/init.js');
init.login({
success:function(){
// 授权登录成功后的逻辑代码
})
})

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。