uniapp 启动APP时判断登录状态,跳转到首页或登录页(或称保持登录状态)

需求:第一次启动app时,出现登录页面;其余次启动项目时,判断是否已经登录过了,登录则为首页,反之则登录页面。

解决方法
  1. 在manifest.json中关闭默认启动界面:splashscreen中属性都改为false,如下图:

manifest源码.png

  2. 在app.vue中添加一下代码(可根据自己的具体情况适当的修改或新增一些代码):

onLaunch: function() {
    //#ifdef APP-PLUS
    //获取已保存在本地的用户信息,该内容在登录页面登录成功之后,才保存到本地的
    const userLoginInfo = uni.getStorageSync('userLoginInfo');
    if (!userLoginInfo) {
        uni.reLaunch({
            url: "/pages/login/index",
            success: () => {
                //跳转完页面后再关闭启动页
               plus.navigator.closeSplashscreen();
            }
       })
    } else {
        plus.navigator.closeSplashscreen(); //关闭启动页,进入首页
    }
    //#endif
},
onShow: function() {
    setTimeout(() => {
        // #ifdef APP-PLUS 
        plus.navigator.closeSplashscreen()
        // #endif
    }, 2000)
},

注意: pages.json 中把首页放在第一位哦!启动页加载时会先加载首页!

pages中的首页.png

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容