QLoginManager 用户登录状态、跳转登录

API兼容性:
QRN:v2.0.0
iOS:80011131
Android:60001160

userIsValid 的 API 兼容性:
QRN:v2.3.0
iOS:80011137
Android:60001168

userPhone 的 API 兼容性:
QRN:v3.2.0
iOS:80011150
Android:60001203

loginWithParam 的 API 兼容性:
QRN:v3.9.0
iOS:80011163
Android:60001230

QLoginManager 提供了获取用户登录状态和跳转到登录页的功能。

引入

import { QLoginManager } from 'qunar-react-native';

数据结构

// 用户信息userData
let userData = {
	userName: string, //用户名
	userID: string, //用户Qunar唯一标识
	userEmail: string, //用户Email,已经做过展示加密处理  
	userNickname: string, //用户的昵称
	userAvatar: string, //头像url
	userUserID: string, //用户UUID
	userIsValid: string, //UserData是否有效 (0无效,1有效)
	userPhone: string, //用户手机号 该手机号是不可信的,不能用作严谨的业务使用,严谨业务需要以后端获取的手机号为准。
}

API

QLoginManager.getLoginInfo( callBack: function, errCallBack: function)

获取用户登录状态。如果用户已经登录,则 callBack 返回用户信息,否则调用 errCallBack

QLoginManager.login( callBack: function, errCallBack: function)

跳转到登录界面。如果用户登录成功,则 callBack 返回用户信息,否则调用 errCallBack

QLoginManager.loginWithParam( param:object callBack: function, errCallBack: function)

跳转到登录界面。param 中支持用户传入参数,例如:usersource, origin等, usersource, origin 需要放在 extData 里,如果用户登录成功,则 callBack 返回用户信息,否则调用 errCallBack
参数使用说明请 点此查看登录参数

使用说明

import {QLoginManager, Alert } from 'qunar-react-native';

var param = {
    shouldOpenLogin:true,
    extData: {
        usersource:'mobile_ucenter', 
        origin:'ucenter',
        },  
    aaa:'测试数据',
}

//获取用户登录状态
QLoginManager.getLoginInfo((userData) => {
    // 已经登陆,返回用户信息userData
    // userData 结构参照上面的数据结构部分
}, (error) => {
    //如果用户没有登录,则跳转到用户登录界面
	QLoginManager.login((userData) => {
    	//登录成功,返回用户信息userData
	}, (error) => {
    	//登录失败
	});
});

//调用可以传参的登录接口,`usersource`, `origin` 需要放在 `extData` 里
QLoginManager && QLoginManager.loginWithParam(
            param,
           //cacheKey,如果useCache为true则cacheKey不能为空
            (data) => {
                 alert(JSON.stringify(data));
        },(data) => {
                 alert(JSON.stringify(data));
        });