Vue学习-刷新界面动态路由丢失

vue3动态路由+页面刷新丢失路由+再次加载路由 注:这里会衍生出一个问题,第一次登录的时候,路由信息没加进去,会跳404,所以这里需要做一个判断,判断路由to.matched这个去哪里的路由信息数组有没有数据,没有就再次添加动态路由信息,还有这块需要添加一个全局标识isAddAgain是否需要重新加载路由。动态路由添加后,每次刷新页面空白,这是因为刷新后路由守卫没再次走一遍,这里就需要在App.vue里面做判断,重新添加路由信息并跳转刷新前路由。目前路由只有静态的页面,我们需要做动态路由,需要在路由守卫router.beforeEach中添加。 阅读详情

前言

页面刷新,路由重新初始化,通过动态路由方式添加的路由因而被清除

1.通过路由守卫解决


//路由守卫
router.beforeEach((to, from, next) => {
  iView.LoadingBar.start();
  //console.log("store",store);
  //处理刷新界面动态路由丢失问题
  let userToken = store.state.users.currentUser.UserToken;
  if(userToken){
    //动态数组丢失说明用户刷新了页面
    if(store.state.users.routers.length == 0){
      //从localStorage中获取菜单树。然后重新加载路由
      let menuRoutes = [];
      menuRoutes = util.initMenu(menuRoutes,JSON.parse(localStorage.getItem("menuData")));
      store.commit('users/updateRouter',menuRoutes);
      //确保addRoutes()时动态添加的路由已经被完全加载上去。
      next({ ...to, replace: true })
    }else{
      next();
    }
  }else{
    next();
  }
});
vue角色不同动态分配路由权限,实现权限的控制 首先说一下大概的思路 router路由第一次只加载登录注册和404页面 当用户成功登录后,使用vuex设置用户的Token 如果Token存在,角色信息不存在,就去后台获取该用户的详细信息,包含但不限角色信息,将角色信息存在vuex中 如果Token存在,角色信息也存在,表明已经获取过了角色信息,直接进入系统 根据vuex中的角色信息去匹配router里面的符合要求路由,动态挂载 ......... 阅读详情

相关推荐

vue中如何实现动态路由传参?

一、vue路由基础用法: 1 .安装 npm install vue-router --save 2 .main.js中 //Vue路由:引入 import VueRouter from 'vue-router' Vue.use(VueRouter) //Vue路由:引入并创建组件 import BYHome from './components/BYHome.vue' import BYNews from './components/BYNews.vue' import HelloWorld fr

ProGrammerXu的博客 5354

关于Vue刷新后丢失动态路由

页面刷新,动态路由丢失

gao_wg的博客 9000

第六阶段:Vue生态高级整合与优化(第85天)Vue Router4动态路由:后端返回路由+动态注册(addRoute)+ 路由刷新保活

实现 Vue Router 4 的动态路由(后端返回 +

xkxnq的专栏 1637

vue2+vue-router动态路由添加及路由刷新后消失的解决办法

vue-router动态路由添加及路由刷新后消失的解决办法

weixin_44166849的博客 4521

Vue路由跳转后组件内容丢失问题解决方案

Vue Router默认使用懒加载(lazy loading)的方式加载组件,这意味着组件的代码只有在需要被渲染时才会被加载。在Vue应用中,如果遇到路由跳转后组件内容丢失的问题,可以尝试使用路由级别的代码分割来解决。通过动态加载组件的代码,可以确保即使组件加载有延迟,也能够正确地显示组件的内容。当我们在Vue应用中使用Vue Router进行路由跳转时,有时候可能会遇到这样的情况:目标组件的内容没有正确地显示出来。需要注意的是,在使用路由级别的代码分割时,需要使用动态导入的语法,并指定组件的相对路径。

CodeSpark的博客 1164

Vue 动态路由权限控制:解决刷新路由丢失问题

本文详细介绍了在Vue项目中实现动态路由权限控制的完整方案。核心内容包括:路由配置分为固定路由和动态路由,通过meta.roles控制访问权限;使用Pinia管理用户状态和路由加载状态;通过filterAsyncRoutes函数实现基于角色的路由筛选;全局路由守卫控制动态路由加载逻辑;侧边栏组件实时响应路由变化。特别针对刷新页面后路由丢失的问题,提供了本地存储持久化和状态管理的解决方案。该方案支持多级路由权限控制,确保系统安全性和用户体验。

bjxlyy的博客 1249

vue实现动态路由一步到位

最近在写vue项目,需要由后台传来当前用户对应权限的路由表,前端通过调接口拿到后处理(后端处理路由),就是配置vue动态路由啦。 由于错信了一些网上的文章:(,导致在这个问题上耗费了不少时间,想想,还是自己写一篇文章来记录一下那些遇到的坑吧。 接下来手把手记录一下,如何从零开始配置vue动态路由。 首先呢,先看看静态路由的配置,简单预览一下,熟悉的可以直接跳过,说这部分,是为了熟悉一下路由的配置。 静态路由的回顾 1.创建router/index.js文件 import Vue from 'v

hunt_er的博客 5万+

vue 解决addRoutes动态添加路由后刷新失效问题

主要介绍了vue 解决addRoutes动态添加路由后刷新失效问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

vue 配置路由 + 用户权限生成动态路由 踩过的那些坑

整个动态路由的设置是我自己研究写的,现在项目中没发现什么问题。如发现有问题,欢迎前来纠正,谢谢!!! 链接:https://pan.baidu.com/s/1J9R2TkqJk0H9JMjqp2WcFw 提取码:n4rk 复制这段内容后打开百度网盘手机App,操作更方便哦 此包因为涉及后台交互未写成mock形式,下载后不可本地运行。node_modules需要自己本地安装。 可以参考项目...

羽下佳人的博客 10万+

碳化硅外延层厚度测量:红外干涉光谱与FFT技术详解

薄膜厚度测量是半导体制造中的关键工艺控制环节,其核心原理基于光的干涉现象。当光在薄膜上下界面反射并叠加时,会产生与厚度相关的干涉条纹。通过分析这些条纹,可以非接触、无损地获取薄膜的精确厚度信息。这项技术的核心价值在于实现了对关键工艺参数的在线、快速监控,对于提升器件性能与生产良率至关重要。在第三代半导体,尤其是碳化硅功率器件的制造中,外延层厚度直接决定了器件的击穿电压和导通电阻等核心性能。红外干涉光谱法因其对碳化硅材料在红外波段的良好透过性,成为该领域主流的厚度测量方案。通过快速傅里叶变换(FFT)对采集到

weixin_29032489的博客 306

ADS2016子电路封装避坑指南:手把手教你制作可复用的自定义Symbol

本文详细介绍了在ADS2016中制作可复用的自定义Symbol的全流程,重点解析了子电路封装的常见问题与解决方案。从电路模块的标准化处理、Hierarchy创建技巧到Symbol视觉优化和库管理策略,帮助工程师提升射频与微波电路设计效率。特别针对Symbol比例适配和引脚优化等核心问题,提供了实用的避坑指南和工程验证方法。

weixin_30275415的博客 205

Vue动态路由配置,f5刷新动态路由丢失等图文详解

Vue动态路由配置,f5刷新动态路由丢失,路由重定向报Promise的错误----------------其实超级简单 业务流程 用户登录(获取token) 得到用户token后,可以携带token(如果不需要token,请略过此步骤)请求动态路由接口 重点:动态路由数组存在本地 栗子: // 用户登录 PostUserToken(data) .then( response => { //设置token this.$cookie.set('acce.

DoLi_JIN的博客 3308

汽车OTA安全启动:ECU双验签机制与实战排障指南

汽车OTA升级中的安全启动,本质是基于密码学的信任建立过程,其核心在于ECU上电时对固件镜像的可信验证。该机制依托硬件信任根(Secure Boot ROM),通过RSA/ECDSA等非对称算法完成签名验签,确保升级包未被篡改且来源可信。技术价值体现在防止恶意固件注入、支撑功能安全(ASIL)与信息安全(ISO/SAE 21434)合规。典型应用场景包括4S店远程升级、BMS控制器固件更新及多ECU协同启动。实践中,验签名失败往往源于证书链断裂、Flash布局错位或KeyUsage字段不匹配等底层工程细节,

weixin_29314405的博客 76

vue-router动态路由实践

vue动态路由 vuex 路由数据(demo) 贡献本人于服务端约定的路由数据结构,仅供参考

Bennett_G博客 2万+

如何打开本地网络的防火墙端口(Windows版)解决ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。问题

ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。 最开始在遇到这个报错的时候十分不解,后来经过思考,有可能是服务器端口占用,或者并没有放行。因此搜查问题的关键是要先去排查问题。 在搜索栏输入控制面板 选择防火墙 选择开关 保证这些选项是开着的 选择高级设置 新建规则 创建协议端口 选择端口 允许连接 点击下一步 创建规则后点击下一步(后命名) 选择任意端口ALL即可 问题排查完毕!socket创建网络通信时,有读者

weixin_46900108的博客 9万+

boost::circular_buffer缓行缓冲区

1、circular_buffer实现了一个环形缓冲区,空间大小是固定的,当到达容器末尾时,将自动利用容器另一端的位置空间。 2、当程序需要容纳大量的元素,但多数情况下仅保存较少数量元素时可以使用circular_buffer_space_optimized,他可以有效的减少内存的占用,提高程序的运行效率。 3、主要接口: 4、实现一个生产者---消费者模式示例: #inc...

小米的修行之路 790

vue关于静态路由和动态路由:

这篇文章写得超详细!!!👇。

weixin_48123820的博客 5032

OData 请求里的 Nextlink 实战:在 ABAP Client Proxy 中优雅处理长列表分页

本文介绍了OData v4标准中的@odata.nextLink分页机制及其在SAP ABAP中的实践应用。重点解析了该机制通过服务端提供的完整URL实现分页获取,客户端只需循环处理直到该字段消失的特点。文章提供了清晰的ABAP代码模板,展示如何通过Remote Client Proxy实现分页数据获取,并强调了仅支持OData v4和远程消费的限制条件。通过HR员工数据聚合的实际案例,说明了流式分页处理的最佳实践,包括服务端过滤、稳定排序和内存控制等关键技术要点,为ABAP开发者提供了可直接落地的解决方案

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 268

关于Vue3动态添加路由后,刷新页面路由丢失的解决

关于Vue3动态添加路由后,刷新页面路由丢失的解决

fangzexinhuanan的博客 1668

40、基于指令的GPU编程:OpenACC与OpenMP的深入解析

本文深入解析了两种基于指令的GPU编程模型——OpenACC和OpenMP。从编程复杂度、数据处理方式和性能表现等多个方面对两者进行了对比分析,并结合实际应用场景提供了选择建议。通过详细的代码示例和性能测试结果,帮助开发者更好地理解和应用这两种编程模型,以充分发挥GPU的并行计算能力。

q5r6s7的博客 134

rk3576 适配摄像头 (mipi 五摄)

在RK3576上实现五路CSI摄像头方案,核心思路是充分复用其视频输入接口,并通过巧妙的软件配置来实现。

weixin_35723192的博客 178

vue 项目如何实现动态加载路由?

一、思路 ① 在vue-router对象中首先初始化公共路由,比如(首页,404,login)等 ② 用户登陆成功后,根据用户的角色信息,获取对应权限菜单信息menuList,并将后台返回的menuList转换成我们需要的router数据结构 ③ 通过**router.addRouter(routes)**方法,同时我们可以将转后的路由信息保存于vuex,这样我们可以在我们的SideBar组...

珍妮的小罐君 9940

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

vue3实现动态菜单和动态路由和刷新后白屏处理

项目中,当每一个角色得到的界面不一致的时候,我们就不能使用静态菜单了,而是要从后端得到动态的菜单数据,然后动态的将菜单数据展示在界面上。除了在界面展示,也还要将界面的路由动态添加,在路由动态添加之后,你可能会出现刷新界面,界面变白的情况,页面刷新白屏其实是因为vuex引起的,由于刷新页面vuex数据会丢失,所以动态添加路由这一步也就失效了。这种情况我会在最后给一个处理方法。

bu_xiang_tutou的博客 7993

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

如何在Vue中实现动态路由

在你的Vue项目中,通常会有一个或类似的文件,用于定义路由。在这个文件中,你可以定义一些基础路由,这些路由在应用启动时就会存在。routes: [path: '/',},// 其他基础路由...});

zzz961117的博客 1301

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Vue 利用 addRoutes 动态创建路由完整 Demo

这个包含登录之后对于路由的处理,动态添加,以及刷新后的为了防止动态路由丢失做的操作。这只是个小 demo,因为路由这块儿牵扯到的内容还挺多的,比如权限限制,Token 验证等等操作,这些都需要根据具体项目具体处理。当然这个 Demo 我个人觉得结构还算清晰,不会影响项目中其他业务逻辑的处理,该单独封装的,都封装了。

锋利的二丫 8242

vue将后端获取到的路由,通过 addRouter 动态添加。

获取路由参数,将路由添加到路由集合中去 // 获取 路由信息 axios.post("/api/mock/getMenu") .then((resp) => { let datas = resp.data; // 遍历获取到的路由数组将其添加到全局路由中 datas.forEach(v => { v.component = routerCom(v.component); // 处理下路径获取 .

leaf的博客 6852
上一篇: Vue学习-动态路由
下一篇: Vue学习-增删改操作菜单数据时左侧菜单栏动态更新
Java_Scholar0
博客等级 码龄9年 104粉丝 55原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值