77百科网
当前位置: 首页 生活百科

vue静态路由(Vue动态路由实现逻辑)

时间:2023-08-02 作者: 小编 阅读量: 2 栏目名: 生活百科

='1'//判断store中是否有路由,若有,进行下一步if(route!

vue静态路由?1、登录后跳转的授权页redierect.vue,获取动态路由的数组,存储于store.ts,我来为大家讲解一下关于vue静态路由?跟着小编一起来看一看吧!

vue静态路由

1、登录后跳转的授权页redierect.vue,获取动态路由的数组,存储于store.ts

2、在main.ts 中引用路由守卫文件

import './router/permission';

3、在permission.ts中用到了

Router.beforeEach

导航前置守卫,在调用路由之前会先调用该方法,在该方法中通过store.ts的路由数组动态渲染路由后访问。

4、在asyncRouter.js通过定义getAsyncRoutes进行路由数组的格式化,同时此处也可以用来通过接口获取路由信息,但是我就不查了,太浪费资源。

permission.ts内容如下

//进度条引入设置如上面第一种描述一样import router from '@/router/index'import store from '@/store/index'import api from '@/api/index'// import { getToken } from '@/utils/auth' // get token from cookieimport { getAsyncRoutes } from '@/utils/asyncRouter' const whiteList = ['/login','','/redirect'];router.beforeEach( async (to, from, next) => {// NProgress.start()// document.title = to.meta.title;// 获取用户token,用来判断当前用户是否登录const hasToken = true;if (hasToken) {//白名单直接进入if (whiteList.indexOf(to.path) >0) {next()//next({ path: '/' })// NProgress.done()} else {//异步获取store中的路由const route= store.getroutestatus();const hasRouters =route!='null' && route!=null && route!='1'//判断store中是否有路由,若有,进行下一步if (route!=null && route=='1' ) {console.log(router.options);next()} else {//store中没有路由,则需要获取获取异步路由,并进行格式化处理//author:lxfamn date:20210117 descrip://这里没没有异步获取路由,而是从本地存储中直接获取,因为路由数组已在登录时获取完成try {console.log('路由守卫');const accessRoutes = getAsyncRoutes(await store.get_routes());// 动态添加格式化过的路由if (accessRoutes.length) {accessRoutes.forEach(item => {router.addRoute('Home',item)})}store.setroutestatus(1)console.log(to.path)// console.log(router.options);// console.log(router.getRoutes());// console.log(router.hasRoute('abc'))// console.log(router.hasRoute('About'))// router.addRoute(accessRoutes);next({ ...to, replace: true })} catch (error) {// Message.error('出错了')next(`/login?redirect=${to.path}`)}}}} else {if (whiteList.indexOf(to.path) !== -1) {next()} else {next(`/login?redirect=${to.path}`)}}}) router.afterEach(() => {})

    推荐阅读
  • 清朝国歌现代演奏(实拍演奏国歌第一人)

    接下来我们就一起去研究一下吧!清朝国歌现代演奏

  • 2022年南充中考成绩怎么算(2020年南充市中考总分)

    体考实考按《南充市教育和体育局关于做好2022年初中毕业升学体育和实验操作技能考试工作的通知》要求组织实施。

  • 海花一号花生生长期是多少天,附简介

    合理密植因为秋花生播种时气温比较高,所以要根据气候进行合理密植,适当增加花生的种植密度,可采用宽行窄株种植法来栽种。②秋花生生长前期是高温多雨的季节,可能会有干旱的气候出现,需根据花生各个生长期进行合理的浇水。其千克果数671个,千克仁数1358粒。

  • 拉面的面怎么和(给家人做两碗面吧)

    以下内容大家不妨参考一二希望能帮到您!拉面的面怎么和盆里放两碗面粉。放适量的盐,一碗面粉放半勺盐就行了,宁愿少一点也不能多一点。放水和面,水要少量增加。和面时用点力捏,和出来的面硬一点。建议面和的硬一点,在一点一点加水和,和到想要的软硬度,这样的面有劲道。

  • 已婚男人越来越冷淡我该怎么做(的男人都有这4个表现)

    “性冷淡”的男人基本都是有趣的,生活上也常常透露出较高的情商,大家都知道汪涵,他总是能用高情商并不失幽默来化解各种突发状况。虽然说对世界蠢蠢欲动的男生有其可爱之处,但是那种“性冷淡”的男人来的更有魅力和安全感,你说呢?

  • 100斤玉米出多少酒(赶紧来看看吧)

    下面更多详细答案一起来看看吧!100斤玉米出多少酒100斤玉米清香型白酒可以出50斤以上,酱香白酒出30斤左右,浓香白酒出40斤左右。其实在酿造过程中,原料的选用、工艺步骤等都会影响玉米酒的出酒率,比如玉米酒原料的处理方面,粉碎颗粒大小、蒸煮水分要求、冷却方式、发酵管理不当就会造成玉米酒出酒率低。

  • 海口买什么海鲜最便宜(海口海鲜市场人头攒动)

    多品种多价位,满足不同市民的味蕾及需求。对此,李先生表示赞同,他虽然住得离市场远,但平时想吃海鲜都会专程过来购买。正在杀鱼的摊主刘先生表示,若要购买海鲜,还是要趁早。刘女士坦言,他们的海鲜价格较其他市场的高一些,主要原因是摊位费较其他市场高。

  • 宝宝喉咙哑了怎么办 婴儿喉咙哑了怎么回事

    做法:冰糖加水溶成糖汁,煮沸后,冲泡鸡蛋,每日傍晚服用1次。对于因为感冒咳嗽、上火等原因引起的声音嘶哑有很好的缓解治疗效果。做法:将葡萄洗净绞汁备用,甘蔗绞汁后将其汁液与葡萄汁混匀,用温开水送服,一日量,分3次服用。

  • 驾校教练脾气差可以换驾校吗(驾校教练态度差)

    教练脾气大,教学不认真,经常暗示学员”送礼“,相信这些现象有不少学员遇见过,那么这种情况下,学员可以要求换教练吗?一般情况下,如果教练确实有十分恶劣的行为,学员可以向驾校或者有关部门投诉,要求换教练,驾校也是愿意给换的。但是也有一些”玻璃心“的学员受不了教练太严肃嗓门太大,而提出换教练。对于这种行为,小编是不提倡的。因为每个教练的教学方式和教学进度是不一样的,如果随意更换教练,可能会导致学车进度落