| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- /**
- * @author 大雄
- * @Date 2021年7月1日20:49:58
- * @description 路由导航守卫(简单版,后续需要功能再完善)
- */
- export default function() {
- // 监听路由前进
- function routerPush({ type = 'navigateTo' } = {}) {
- routeWatchClearModal();
- }
- // 监听路由后退
- function routerBack() {
- routeWatchClearModal();
- }
- // 页面跳转后,销毁当前页面未关闭的弹框
- function routeWatchClearModal() {
- try {
- var FyShowModalView = plus.nativeObj.View.getViewById("FyShowModalView");
- if (FyShowModalView) {
- FyShowModalView.clear();
- }
- var FyShowModalCancel = plus.nativeObj.View.getViewById("FyShowModalCancel");
- if (FyShowModalCancel) {
- FyShowModalCancel.clear();
- }
- var FyShowModalConfirm = plus.nativeObj.View.getViewById("FyShowModalConfirm");
- if (FyShowModalConfirm) {
- FyShowModalConfirm.clear();
- }
- } catch(err) {
- console.log(err);
- }
- }
-
- uni.addInterceptor('navigateTo', {
- success(e) {
- routerPush({ type: 'navigateTo' });
- }
- })
- uni.addInterceptor('redirectTo', {
- success(e) {
- routerPush({ type: 'redirectTo' });
- }
- })
- uni.addInterceptor('reLaunch', {
- success(e) {
- routerPush({ type: 'reLaunch' });
- }
- })
- uni.addInterceptor('switchTab', {
- success(e) {
- routerPush({ type: 'switchTab' });
- }
- })
- uni.addInterceptor('navigateBack', {
- success(e) {
- routerBack();
- }
- })
-
- }
|