Cannot find module '@/views/login/index'
Failed to resolve async component default
vue-router.esm.js:1897 Error: Cannot find module '@/views/login/index'
at webpackEmptyContext (index.js:39)
at permission.js:90
错误原因是webpack修改打包逻辑,webpack4中动态import不支持变量方式
解决方法
进入router中的index.js
component: () => import('@/views/login/index'),
改为
component: (resolve) => require(["@/views/login/index"], resolve),
如果是动态路由则
export const loadView = (view) => {
// 路由懒加载
return () => import(`@/views/${
view}`)
}
改为
export const loadView = (view) => {
// 路由懒加载
return (resolve) => require([`@/views/${
view}`], resolve)
}