await 打包报错,如何解决?

来源:11-7 动态路由

河畔一角

2021-06-19

await 打包报错,如何解决?

写回答

1回答

河畔一角

提问者

2021-06-19

路由中的await在开发环境下面不报错,但是打包到线上用不了,目前给的方案是:

await loadAsyncRoutes();  修改成 loadAsyncRoutes();

同时,把路由钩子放到接口里面进行调用,比如:

```js

async function loadAsyncRoutes() {

let userInfo = storage.getItem('userInfo') || {}

if (userInfo.token) {

try {

const { menuList } = await API.getPermissionList()

let routes = utils.generateRoute(menuList)

const modules = import.meta.glob('../views/*.vue')

console.log('views',modules)

routes.map(route => {

let url = `../views/${route.name}.vue`

route.component = modules[url];

router.addRoute("home", route);

})


// 导航守卫

router.beforeEach((to, from, next) => {

if (router.hasRoute(to.name)) {

document.title = to.meta.title;

next()

} else {

next('/404')

}

})

} catch (error) {


}

}

}

```

1
1
zhangjed
老师,这个方案在页面刷新后找不到路径的位置
2021-07-09
共1条回复

Vue3+ElementPlus+Koa2 全栈开发后台系统

从前端晋级到全栈,让你的未来发展有更多可能

1069 学习 · 580 问题

查看课程