【发布时间】:2022-10-04 21:28:34
【问题描述】:
我正在构建一个包含组件和一些共享 CSS 的库,例如设计系统。
问题是它没有将字体分成不同的块,而是将它们内联在字体中作为base 64,所以CSS文件变得很大!
// vite.config.ts
import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
import { resolve } from 'path';
// https://vitejs.dev/config/
export default defineConfig({
plugins: [vue()],
build: {
lib: {
entry: resolve(__dirname, 'src/index.ts'),
name: 'design-system',
},
rollupOptions: {
external: ['vue'],
output: {
globals: {
vue: 'Vue',
},
},
},
},
resolve: {
alias: [
{ find: '@', replacement: '/src' },
],
},
});
我已经尝试将它放在 root/public 中,但它没有用。
我有一个文件 _fonts.css 像这样导入字体
@font-face {
font-family: Inter;
src: url('/public/fonts/Inter-Regular.ttf') format('truetype');
font-weight: 400;
}
然后我有一个导入它的 main.scss
// main.scss
@import 'normalize';
@import 'themes';
@import 'fonts';
关于如何拆分它的任何想法?
【问题讨论】:
-
您是否设法拆分字体块?我正在寻找那个
-
我将 lib 迁移到 webpack。看起来现在没有办法做到这一点。