vue 项目上线后页面刷新后报错404
在router文件夹下index.js里面mode的值,由history 改成 hash
export default new Router({
mode:'history',
scrollBehavior: () => ({ y: 0 }),
routes: anRouterMap
});
由history 改成 hash
export default new Router({
mode:'hash',
scrollBehavior: () => ({ y: 0 }),
routes: anRouterMap
});
通过history ,我们丢掉了丑陋的#,但是它也有个毛病:
不怕前进,不怕后退,就怕刷新,f5,(如果后端没有准备的话),因为刷新是实实在在地去请求服务器的,不玩虚的。
在hash模式下,前端路由修改的是#中的信息,而浏览器请求时是不带它玩的,所以没有问题.但是在history下,你可以自由的修改path,当刷新时,如果服务器中没有相应的响应或者资源,会分分钟刷出一个404来。