分享出去的小程序,新用户打开时候没有调用onLaunch?
没有调用onLaunch,导致没有调用wx.login结果无法获得首布局。
onLaunch: function(options) {
console.log(options);
var scene = decodeURIComponent(options.scene);
if (scene.indexOf('@') != -1) {
var arr = scene.split('@');
if (arr.length >= 2)
options.query.user_id = arr[1];
if (arr.length >= 3)
options.query.applet_id = arr[2];
}
this.globalData.share_data = options.query;
this.onLogin();
this.getAppBar();
},
onLogin() {
try{
// 登录
wx.login({
success: res => {
this.globalData.code = res.code;
// 获取用户信息
wx.getSetting({
success: res => {
if (res.authSetting['scope.userInfo']) {
// 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框
wx.getUserInfo({
success: res => {
。。。。。
}, (data) => {
wx.reLaunch({
url: '/pages/user/register',
})
});
},
fail:res=>{
wx.reLaunch({
url: '/pages/user/register',
})
}
})
} else {
wx.reLaunch({
url: '/pages/user/register',
})
}
},
fail: res => {
wx.reLaunch({
url: "/pages/user/register",
})
}
})
},
timeout: res => {
wx.reLaunch({
url: "/pages/user/register",
})
},
fail: res => {
wx.reLaunch({
url: "/pages/user/register",
})
}
})
}catch(e){
wx.reLaunch({
url: "/pages/user/register",
})
}
},
按照如上逻辑 没有获取用户信息权限,肯定跳转到/pages/user/register,但是十个新用户 会出现一两个不跳转,一直在/pages/index/index,等待
if (this.userInfoReadyCallback) {
this.userInfoReadyCallback(res);
}
因为我试过很多手机都没有出现,但是客户已经有好几个卡死主界面了,所以我怀疑是不是onLaunch没有调用。
求大神帮我看看!!!!!!!!!