vue-cli 4 多页面开发非index页history mode界面加载为空
使用vue-cli4自带的多页面开发模式,有两个spa,分别是index和admin,配置如下
module.exports = {
...
pages: {
index: {
entry: 'src/index/main.js',
template: 'public/index.html',
filename: 'index.html',
title: '世说新语',
chunks: ['chunk-vendors', 'chunk-common', 'index']
},
admin: {
entry: 'src/admin/main.js',
template: 'public/admin.html',
filename: 'admin.html',
title: '管理',
chunks: ['chunk-vendors', 'chunk-common', 'admin']
}
},
devServer: {
port: 10086,
historyApiFallback: {
rewrites: [
{ from: /^\/$/, to: '/index.html' },
{ from: /^\/admin\//, to: '/admin.html' }
],
disableDotRule: true
},
proxy: {
'/api': {
target: 'xxx',
changeOrigin: true
}
}
}
...
}
之后分别为两个界面配置对应的项目文件夹
下图为文件结构,index文件夹对应index,admin文件夹对应admin,里面放着对应的route,App.vue,main.js 和 vuex 文件。
我开发时遇到一个问题,就是run serve
之后加载index部分正常,但是当我访问 localhost:10086/admin
的时候,admin 的app.vue加载了,但是路由中加载的其他组件并没有加载,导致界面一片空白。奇怪的是我使用admin路由的hash mode 可以正常显示。
history mode 失败,只加载了 app.vue
hash mode 成功
=。=有没有大佬用vue-cli3做过多页打包的可以分享下经验
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
解决了。
history 路由会匹配完整的路由,而我在route里面设置的路由没有加上
admin
或者直接在路由里加一个
base
属性即可更具体的可以参考我这个项目