赞
踩
描述
基于vue-cli
的项目打包后,如果部署在域名的根路径下,页面显示正常,但是如果部署在域名的子路径下,打开页面后页面空白,且无报错。
原因
因为打开页面后没有匹配到任何一个路由,也就是设置在router
里的路径没有任何一个被匹配到,包括其中设置的path: '/'
这个路径,因此也就无法加载对应的组件,所以显示一片空白。
vue-router
默认使用的是history
模式,打包时需要改成hash
模式即可。可在router
文件夹下的index.js
文件中修改。
☺☺☺☺☺☺☺
const router = new VueRouter({
mode: 'hash',
routes: [...]
});
ChunkLoadError: Loading chunk 12 failed
问题原因
模块加载错误,公共路径问题或使用了路由懒加载。
解决方案一
把
vue.config.js
文件中的公共路径由相对路径改成绝对路径publicPath: '/'
更改为publicPath: './'
。
解决方案二
取消懒加载。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。