aircraft-pilot/common/routerInterceptor.js

32 lines
689 B
JavaScript
Raw Permalink Normal View History

2025-07-02 14:58:38 +08:00
// 需要登录的界面
let needLogin = [
];
// 拦截类型
let list = ["navigateTo", "redirectTo", "reLaunch", "switchTab"];
const install = (vm) => {
// uniapp跳转页面路由拦截器
list.forEach(item => {
uni.addInterceptor(item, {
invoke(e) {
const token = vm.$store.state.vuex_token;
const url = e.url.split('?')[0];
if (needLogin.includes(url) && !token) {
uni.showToast({
title: '该页面需要登录才能访问,请先登录',
icon: 'none'
});
uni.navigateTo({
url: "/pages/mobile_web/my/child_pages/login?nextUrl="+e.url
});
return false;
}
return true;
}
});
});
}
export default {
install
}