我有一个sapperjs应用程序,就像你从调用npx degit sveltejs/sapper-template my-app
得到的那个。我想添加一个字体。普通人可能会在app/template.html
上添加这样的一行:
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto+Slab">
网络原因使这不切实际,所以我想在本地托管字体。在create-react-app中,我只需将import 'typeface-roboto-slab'
放在App.jsx或同等组件的顶部。如何在我的sapper / svelte应用程序中实现类似的效果?
我认为最好将它添加到app/template.html
,因为其他任何地方和css都将作用于单个组件。这似乎是几乎任何应用程序都需要的东西,但在我能找到的文档中没有任何关于它的内容。
它不像CRA那样流线型(但是!)但你可以通过将字体复制到你的assets
文件夹中来实现这一点......
npm i typeface-roboto-slab
cp -r node_modules/typeface-roboto-slab assets
...然后在你的<link>
中添加一个app/template.html
:
<link rel="stylesheet" href="typeface-roboto-slab/index.css">
在版本0.19中,Sapper获得了直接导入CSS文件的能力,但它目前不知道如何处理像url('./files/roboto-slab-latin-100.woff2')
这样的引用文件。这将在未来版本中得到支持,然后您将能够以与CRA相同的方式使用字体。