pages.js pages节点的第一项为应用入口页(即首页,这里作为启动页来使用), 可以在home.vue放如一张gif动图,动图时间位2秒,设置定时器在2.5秒后跳转。
如图所示,添加两个vue页面作为启动页,和引导页
home页面(启动页),这里只记录页面逻辑,样式代码请自行设置
onLoad() { //APP端 //#ifdef APP-PLUS if (uni.getStorageSync('first_falg')) { // first_falg用来判断是否是第一次启动APP。 this.goBack(); } else { // 是第一次进入APP,跳转到引导页 setTimeout(function() { uni.navigateTo({ url: '/pages/home/home2', animationType: 'pop-in', animationDuration: 300 }); }, 3000) } //#endif // H5端 //#ifdef H5 if (uni.getStorageSync('token')) { // 有token,直接进入首页 uni.switchTab({ url: '/pages/index/index', animationType: 'pop-in', animationDuration: 300 }); } else { uni.navigateTo({ // 没有token去登录 url: '/pages/login/login', animationType: 'pop-in', animationDuration: 300 }); } //#endif }, methods: { goBack(name) { if (uni.getStorageSync('access_token')) {//有token setTimeout(function() { uni.switchTab({ url: '/pages/index/index', animationType: 'pop-in', animationDuration: 300 }); }, 2500) } else { setTimeout(function() {//去登录 uni.reLaunch({ url: '/pages/login/login', animationType: 'pop-in', animationDuration: 300 }); }, 2500) } }, },home2引导页,只记录页面逻辑部分
//轮播图滑动到最后一张,当点击开始使用 goBack(name) { if (uni.getStorageSync('token')) { // 有token进首页 uni.switchTab({ url: '/pages/index/index', animationType: 'pop-in', animationDuration: 300 }); } else { uni.reLaunch({ // 没有token进登录,这里页需要uni.reLaunch跳转,防止安卓物理返回时重新进入到引导页 url: '/pages/login/login', animationType: 'pop-in', animationDuration: 300 }); } },登录页面和首页,需要把first_falg存起来,下次不用再进入引导页
uni.setStorageSync('first_falg', true);//是否第一次进入APP,true不是,跳过引导页