webpack3打包vue-router实现懒加载报错Loading chunk 0 failed.
环境
webpack@3.8.1
babel-core@6.26.0
babel-plugin-syntax-dynamic-import@6.18.0
vue@2.5.13
vue-router@3.0.1
懒加载实现逻辑
vue-router路由的实现
const Index = () => import(/* webpackChunkName: "index" */ './pages/index/index.vue');
const T1 = () => import(/* webpackChunkName: "t1" */ './pages/temp/t1.vue');
const T2 = () => import(/* webpackChunkName: "t2" */ './pages/temp/t2.vue');
webpack的配置
output: {
path: '...',
filename: 'app.js',
chunkFilename: '[name].[chunkhash].js'
},
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
},
{
test: /\.js$/,
loader: 'babel-loader',
exclude: /node_modules/,
options: {
presets: ['es2015', 'stage-2'],
plugins: ['syntax-dynamic-import']
}
}
]
}
执行异常
Error: Loading chunk 0 failed.
问题
简单的说就是 app.js 无法正常加载,vue-router 懒加载生成的分块文件,因为请求资源是从根目录请求的,不是通过相对路径进行请求,因此报异常,无法请求到资源,想请问一下有什么办法可以设置打包时,请求资源不要从根目录进行请求不?如何可以避免出现 Loading chunk 0 failed?
(请不要通过 vue-router 的 onError 进行处理)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
已经解决,通过设置 webpack 的 filename 可以设置对应的路径的(哭笑)