奇怪的是ttf和woff文件都加载到,就是不显示字体库的图标
一开始以为是vue-cli打包的问题,一直找不到解决方案,之后把dist放入iis运行,界面正常,问题定位是springboot造成的!!!
springboot 用maven打包时把resource进行了filter,字库文件被修改了!!
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
解决方案:让ttf和woff文件不要filter
(我的ttf和woff都放在/static/fonts里,所有告诉maven这个目录里面都不要filter就可以了)
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<!-- 在Springboot中运行前端代码时需要 -->
<!-- 不要过滤字体库,会造成字体库内容变化,显示不了 -->
<excludes>
<exclude>static/fonts/**</exclude>
</excludes>
</resource>
<!-- 在Springboot中运行前端代码时需要 -->
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering>
<includes>
<include>static/fonts/**</include>
</includes>
</resource>
</resources>
</build>
PS:让Maven支持ttf和woff,看有的大牛的文章是这样写的,我试过以下代码不用写也是可以显示的,不知道具体的作用,有大牛理解的请不吝赐教!
<build>
<plugins>
<!-- 支持字体库 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<nonFilteredFileExtensions>
<nonFilteredFileExtension>woff</nonFilteredFileExtension>
<nonFilteredFileExtension>woff2</nonFilteredFileExtension>
<nonFilteredFileExtension>eot</nonFilteredFileExtension>
<nonFilteredFileExtension>ttf</nonFilteredFileExtension>
<nonFilteredFileExtension>svg</nonFilteredFileExtension>
</nonFilteredFileExtensions>
</configuration>
</plugin>
</plugins>
</build>