vue项目点击浏览器返回至前几个页面

2018-07-10  本文已影响0人  屎香味十足

需求场景1:用户注册三步需求:

在快付小店项目开发中,有这样一个需求:用户进入A页面(招商首页),点击注册按钮,进入B页面(注册第一步),第一步注册完后,点击下一步,把第一步注册信息上报给服务端保存,跳转到C页面(注册第二步),第二步注册完后,点击下一步,把第二步注册信息上报给服务端保存,跳转到D页面(注册第三步),这时候,用户发现忘记了第三步注册中的某一个信息,需要确定后才能注册,所以这时候需要放弃注册;此时产品需求是:点击浏览器返回,返回到用户一开始进入的A页面,而不是默认返回上一页(C页面)

需求场景2:tab切换:

两个tab页面进行切换,但是点击返回的时候,还是返回到初始进来的页面;

解决方案:

/**
     * A页面跳转到B页面
     * */
goFirstRegisterPage(){
     this.$router.replace({name:"B"});
},
/**
     * B页面跳转到C页面
     * */
goSecondRegisterPage(){
     this.$router.replace({name:"C"});
},
/**
     * C页面跳转到D页面
     * */
goThridRegisterPage(){
     this.$router.replace({name:"D"});
},

当希望通过点击浏览器返回按钮,返回到自己随意的页面,这个时候需要使用beforeRouteLeave 这个路由生命周期函数中进行了;判断返回的页面如果是上一个页面,然后通过next() 做重定向

上一篇 下一篇

猜你喜欢

热点阅读