//路由表单动态添加
menuArray.forEach((item) =>{
router.addRoute('Main',item)
})
menuArray里存储动态路由的数据
控制台报错如图:
所使用的依赖:
"dependencies": {
"axios": "^1.1.2",
"core-js": "^3.8.3",
"element-ui": "^2.15.10",
"js-cookie": "^3.0.1",
"less": "^4.1.2",
"less-loader": "^6.0.0",
"mockjs": "^1.1.0",
"vue": "^2.6.14",
"vue-router": "^3.5.2",
"vuex": "^3.6.2"
},
开始排查问题:
1. 在前端 - 【vue-router源码】五、addRoute/removeRoute/hasRoute/getRoutes源码分析_个人文章 - SegmentFault 思否查了addRoute的使用方法,并没有用错
2. 按照vue项目router报错:TypeError: _router.default.addRoute is not a function_念念ovo的博客-CSDN博客卸载现有vue-router,使用cnpm安装3.5.2版本,还是一样;node版本也没有问题
3. 看了一篇博客Vue3项目运行时报错误:TypeError:router.addRouters is not a function - rainbow70626 - 博客园 (cnblogs.com)将addRoute方法改写为addRoutes方法,还是不行
终于!!
最后发现是忘了在main.js里面把router传给addMenu了,但是其实我加上去了还是不行
然后我就直接在addMenu所在文件里面import router了,最后成功解决!
感谢帮我解答的不知名大佬!!!