语义 UI React 图标在 spring 启动时显示为空矩形

Semantic UI React icon show as empty rectangle when wrap in spring boot

spring 引导应用程序有一个 UI 文件夹,其中包含所有 UI 代码和程序包管理文件(package.json、yarn.lock)。通过执行 yarn install 和 yarn start,该文件夹可以在端口 3000 中完全 运行 自身。来自 Semantic UI React 的图标在这一点上工作正常。我使用的是最常见的 "home" 图标,因此无论如何它都应该可用。 (我导入'semantic-ui-css/semantic.min.css')

但是如果我将我的 UI 包装在 springboot 下并在端口 8080 中执行 "mvn clean install" 和 "java -jar xxx.jar" 到 运行 ,所有图标都会变成空的矩形,但所有其他 css 布局都可以正常工作。我是否可能在 spring 启动或语义 ui 反应中遗漏了一些配置?或者我应该下载实际的图标并存储在本地?我不知道如何调试这个..

任何时候您使用常规 Web 应用程序并将其包装在 spring-boot、electron 或 cordova 之类的东西中时,您的某些文件路径可能无法在新平台上正常工作。执行此操作后,您的字体文件也可能不正确。

检查您的 CSS 并查看如何为您的图标字体定义路径:

a) 如果字体位于 CDN 上,您的打包应用程序是否允许您访问这些 Web 资产?如果没有,您将需要在构建中包含字体文件并在本地引用它们。

b) 它们是相对路径吗?

  • 检查字体是否位于您 CSS 引用的路径中。
  • 如果是这样,相对路径可能无法在您的新平台上运行。你会 可能必须编译略有不同 CSS 环境。

看来您需要明确排除字体文件被 Maven 过滤。 postalservice14 的答案对我有用。

在此处回答: