//在src/router/index.js文件中,添加beforeEach
const vueRouter = new VueRouter({…});
vueRouter.beforeEach((to, from, next) => {
let zxxToken = localStorage.getItem(“zxxToken”);
let redirectUrl = window.location.href;
if(!zxxToken) {
if(to.name !== ‘login’) {
sessionStorage.setItem(“url”, redirectUrl);
vueRouter.push({name: ‘login’});
}
} else {
let url = sessionStorage.getItem(“url”);
//该特殊URL,会导致无限循环跳转,需要赋值。这是项目升级遗留的问题
if(url === null || url === ‘null’) {
sessionStorage.setItem(“url”, redirectUrl);
}
}
//如果店铺主页的URL不带任何参数,就进入默认的店铺
if(to.path === ‘/’ && window.location.search.length === 0) {
redirectUrl = window.location.protocol + ‘//’ + window.location.host + ‘/?shopId=52’;
sessionStorage.setItem(“url”, redirectUrl);
}
next();
});