1、Ant Design Pro 打包css
1.1 運行 build打包html
$ npm run build 1.2 將打包生成的靜態文件拷貝到spring boot 項目中前端
構建打包成功以後,會在根目錄生成 dist 文件夾,而後將dist 文件夾裏的的文件複製到 spring boot 項目的 /src/main/resources/static 目錄下spring
SpringBoot整合Ant Design Pro進行部署npm
2、配置spring boot 項目可訪問到static目錄下的index.html2.1 以gradle爲例導入spring-boot-starter-thymeleaf瀏覽器
compile group: 'org.springframework.boot', name: 'spring-boot-starter-thymeleaf', version: '2.1.5.RELEASE' 2.2 在application.yml配置文件中配置服務器
#配置html資源路徑app
spring:ide
thymeleaf:spring-boot
prefix: classpath:static/
2.3 在controller配置訪問地址
/** @author Alan Chen
@description 攔截Ant Design Pro訪問路徑
return "index";
}
} 注意:@Controller不是@RestController,使用@RestController會返回「index」字符串
輸入地址 http://localhost:8080 、http://localhost:8080/user/login 都會轉發到index.html,從而展現Ant Design Pro頁面
2.4 配置spring boot 項目可訪問到static目錄下的js、css
嘗試訪問http://localhost:8080/user/login時,發現如今已經能訪問到index.html了,但頁面報錯了,訪問不到js和css,錯誤頁面以下:
須要配置一下,讓js、css等靜態資源去static目錄下去加載@Configuration
@EnableWebMvc
public class UseStaticResourceConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
}
}
3、整合完成
再次訪問http://localhost:8080/user/login 頁面顯示正常
訪問http://localhost:8080/console/commodity/product-brand 顯示後臺界面 4、補充2.3 關於2.3,網上有一種思路是這樣的:Ant Design構建完成後只有一個index.html頁面和一些js、css文件,當使用browserHistory,若是直接放在Spring Boot的resource/static文件夾下面,當瀏覽器直接訪問或者在非 "/ 「,」/index"路徑刷新時,因爲服務器沒法正確響應,會直接觸發404報錯。
解決思路:瀏覽器訪問任何404錯誤路徑都返回 /index.html文件。剩下的事情交給前端路由
@Controller
public class AntDesignController implements ErrorController {
@Override
public String getErrorPath(){
return "/error";
} @RequestMapping(value = "/error")
public String getIndex(){
return "index"; //返回index頁面
}
} 這種方式也能實現效果,但這種方式使得全部的錯誤請求(404)都會被攔截跳轉到index.html ,其實不太嚴謹,並且給人的感受是,先讓其「出錯」,再來「補救」
參考官方文檔:Ant Design Pro
居然都看到最後了,給小編點個關注吧,小編還會持續更新的,只收藏不點關注的都是在耍流氓!