Vue3项目运行时报错误:TypeError:router.addRouters is not a function

在我们动态添加路由时,router.addRouters()方法报错:Uncaught (in promise) TypeError: router.default.addRouters is not a function。

原因分析:

新版VueRouter废除了addRoutes();//添加的数组

改为addRoute(RouteRecordRaw);//添加的为对象

解决办法:

// 旧版本写法
const routers = store.getters.addRouters;
router.addRoutes(routers);
// 新版本写法
const routers = store.getters.addRouters;
routers.forEach((route) => {
  router.addRoute(route);
});

即可解决问题

猜你喜欢

转载自blog.csdn.net/Star_ZXT/article/details/126912184