地址: font-packer-webpack-loader
我们项目中有时可能会用到特殊字体, 但为了那么几个字引入一个好几 M 的字体文件实在是浪费,手动提取又很麻烦。
这个 loader 就是为了解决这个问题。欢迎三连(star issue pr)
yarn add -D font-packer-webpack-loader
// webpack.config.js
const SRC = path.resolve("src")
module.exports = {
// ...
module: {
rules: [
// ...
{
test: /\.ttf(\?.*)?$/i,
include: SRC,
use: [
// 正常 .ttf 文件需要的 loader
{
loader: "url-loader",
options: {
limit: 8192,
name: "assets/fonts/[name].[contenthash:5].[ext]",
},
},
// 在下面新增本 loader
{
loader: "font-packer-webpack-loader",
options: {
texts: [
"这是可选的、需要额外提取的文本",
],
filesOrDirs: [
// 可选
// 示例是 src 目录, 你可以配置任何文件或目录, 会将该 文件 /目录 中的文本提取到 .ttf 文件中
SRC,
],
},
},
],
},
],
},
}