我正在使用以下语法在 Angular 9 应用程序的 `style.scss` 中导入字体:
这在我运行
我本地安装的字体可以正常工作 - 所以我怀疑这与第三方托管的字体有关。
跟踪错误,它与称为
@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap');
这在我运行
ng serve
时有效。然而,当 Angular 打包以生产模式部署时,该导入似乎不起作用。生成的打包文件没有尝试加载这种字体 - 没有任何网络请求。此外,在 Chrome 控制台中也没有错误。我本地安装的字体可以正常工作 - 所以我怀疑这与第三方托管的字体有关。
@font-face {
font-family: Korolev;
font-weight: 600;
font-style: normal;
src: url('assets/fonts/korolev-medium-webfont.ttf');
}
跟踪错误,它与称为
injectStylesIntoStyleTag.js
的东西有关,来自于 Webpack 的 style-loader。当在开发模式下运行 ng serve
时,这似乎起了作用,因为我们可以看到从创建在头部中加载字体的 <style>
的脚本发起了请求。然而,当以生产模式运行时,要么加载字体的机制不同,要么似乎没有启动。
在 Angular 生产模式中,第三方 SCSS 导入是否正常工作?
如果不建议使用
import
导入第三方字体,则使用什么机制在样式表中使用第三方字体更好?
index.html
中硬编码了字体链接。 - Mikko Ohtamaa