赞
踩
把vue项目打包后放入springboot的static文件夹里,首先访问首页,然后在里面进行任何页面跳转都是没有问题的,但是假如在非首页的任何一个页面点击刷新,就会报错
主要问题在于:由vue开发的应用,采用的是SPA单页面模式
localhost:9999/login
界面,,像后台发送了html问价请求,然而后台并没有login.html这一个html文件,所以就会返回如下的错误,正确的做法应该是:当我们直接输入localhost:9999/login
路径时,先将页面重定向到localhost:9999/index.html
,然后通过js控制路由实现跳转在springboot的项目下新建一个error的package,再新建一个ErrorConfig的类,设置出现错误界面时重定向到index.html
package com.example.error; import org.springframework.boot.web.server.ErrorPageRegistrar; import org.springframework.boot.web.server.ErrorPage; import org.springframework.boot.web.server.ErrorPageRegistry; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Component; @Component public class ErrorConfig implements ErrorPageRegistrar { @Override public void registerErrorPages(ErrorPageRegistry registry) { ErrorPage error404Page = new ErrorPage(HttpStatus.NOT_FOUND, "/index.html"); registry.addErrorPages(error404Page); } }
关于SPA可以看我的下一篇博客
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。