基于vue-admin-template的动态路由的问题解决

基于vue-admin-template的动态路由的问题解决

1.问题一:页面无法显示

控制台报如下错误:

首先经过一番网上搜索,有说是webpack的原因,调试后发现不是,然后再排查后台返回的组件地址。

由于我的前端拼接组件地址的代码如下:

html 复制代码
component:item.componentUrl === '#'? Layout: resolve => require([`@/views/${item.componentUrl}/index.vue`], resolve)

查看后台地址,错误原因即后台多加了个/,正确的组件地址为:

刚开始遇到此类问题时,总以为是前端是不是写法错误,不支持之类的,然而我调试的时候,将动态路由写死进行调试可以正确返回,故思考后台返回组件地址的问题。

问题二 :刷新白屏

参考了一下网上教程,代码如下:

javascript 复制代码
if (isShow) {
			isShow = false; // 第一次进入后修改,使第二次跳转
			// 判断第一次进入路由守卫
			const accessRoutes = await store.dispatch('permission/generateRoutes');
			//更新加载路由
			router.options.routes = store.getters.permission_routes;
			// 动态添加可访问路由
			router.addRoutes(accessRoutes);
			next({ ...to, replace: true });
		} else {
			next();
		}

注意:isShow = false 一定要在next({ ...to, replace: true })前面,否则还是白屏,我搞了好久,才发现是这个原因,累了。。。。

相关推荐
inksci11 小时前
在线编辑表格,功能强大,json互转
前端·javascript·html
咩咩啃树皮11 小时前
JavaScript 中 this 指向为什么总在变?
开发语言·前端·javascript
彭亚川Allen11 小时前
从零手搓 RAG 之 Embedding 技术
前端·后端·面试
OpenTiny社区11 小时前
GenUI SDK v1.4.0 的 React 渲染器到底做对了什么?
前端·github·ai编程
星光开发者12 小时前
基于springboot智慧草场牛羊管理系统-计算机毕设【课程设计】50360
vue.js·spring boot·后端·mysql·php·课程设计·express
咩咩啃树皮12 小时前
JavaScript 异步流程为什么容易失控?从回调到可维护设计
开发语言·javascript·ecmascript
jerrywus12 小时前
chrome-devtools-mcp 总弹授权、抢标签页?我是这样一步步配好的
前端·agent·mcp
橘猫走江湖12 小时前
Vue 3 虚拟 DOM:作用、触发机制,以及怎样变成页面上的真实节点
前端·vue.js·dom
weixin_BYSJ198712 小时前
电竞先锋网站---附源码02032
java·vue.js·spring boot·python·django·tomcat·php
郑州光合科技余经理13 小时前
同城小程序开发:同一笔单在用户端和商家端各显示到哪
android·java·开发语言·前端·后端·uni-app·php