|
1 | 1 | import { colors } from './custom-colors.js'
|
2 | 2 |
|
| 3 | +// 判断当前环境是否为开发环境 |
| 4 | +const isDevelopment = process.env.NODE_ENV === 'development' |
| 5 | + |
| 6 | +// 导出根据环境变量生成的配置 |
3 | 7 | export const tailwindcssConfig = {
|
4 | 8 | darkMode: 'class',
|
| 9 | + // 更精确的文件匹配模式以减少处理文件数量 |
5 | 10 | content: [
|
6 |
| - 'node_modules/**/vuepress-theme-reco/lib/**/*.(vue|html)', |
7 |
| - 'node_modules/**/@vuepress-reco/**/lib/**/*.(vue|html)', |
| 11 | + // 只包含具体组件文件夹和布局相关文件 |
| 12 | + 'node_modules/**/vuepress-theme-reco/lib/client/components/**/*.(vue|html)', |
| 13 | + 'node_modules/**/vuepress-theme-reco/lib/client/layouts/**/*.(vue|html)', |
| 14 | + // 特定插件的关键组件 |
| 15 | + 'node_modules/**/@vuepress-reco/**/lib/client/components/**/*.(vue|html)', |
8 | 16 | ],
|
| 17 | + // 开发环境优化 |
| 18 | + safelist: [], |
| 19 | + // 启用JIT模式 |
| 20 | + mode: 'jit', |
| 21 | + // 启用裁剪模式,只生成实际使用的类 |
| 22 | + purge: { |
| 23 | + enabled: true, // 在开发和生产环境中都启用 |
| 24 | + content: isDevelopment ? [ |
| 25 | + // 开发环境:更严格的匹配,只关注关键组件 |
| 26 | + 'node_modules/**/vuepress-theme-reco/lib/client/components/**/*.(vue|html)', |
| 27 | + 'node_modules/**/vuepress-theme-reco/lib/client/layouts/**/*.(vue|html)', |
| 28 | + 'node_modules/**/@vuepress-reco/**/lib/client/components/**/*.(vue|html)', |
| 29 | + ] : [ |
| 30 | + // 生产环境:包含所有可能的文件 |
| 31 | + 'node_modules/**/vuepress-theme-reco/lib/**/*.(vue|html)', |
| 32 | + 'node_modules/**/@vuepress-reco/**/lib/**/*.(vue|html)', |
| 33 | + ], |
| 34 | + }, |
| 35 | + // 禁用状态变体,减少生成的CSS数量 |
| 36 | + corePlugins: isDevelopment ? { |
| 37 | + // 开发环境中禁用部分变体样式以提高性能 |
| 38 | + preflight: false, // 禁用默认样式重置 |
| 39 | + groupHover: false, // 禁用组悬停效果 |
| 40 | + focus: false, // 禁用聚焦效果 |
| 41 | + focusVisible: false, // 禁用可见聚焦效果 |
| 42 | + active: false, // 禁用活动状态效果 |
| 43 | + disabled: false, // 禁用禁用状态效果 |
| 44 | + visited: false, // 禁用已访问状态效果 |
| 45 | + firstChild: false, // 禁用第一子元素选择器 |
| 46 | + lastChild: false, // 禁用最后子元素选择器 |
| 47 | + odd: false, // 禁用奇数行选择器 |
| 48 | + even: false, // 禁用偶数行选择器 |
| 49 | + } : { |
| 50 | + // 生产环境保持全部功能 |
| 51 | + }, |
| 52 | + // 禁用不需要的功能,减少生成的CSS |
| 53 | + // 根据实际需求可以添加或删除 |
| 54 | + future: { |
| 55 | + removeDeprecatedGapUtilities: true, |
| 56 | + purgeLayersByDefault: true, |
| 57 | + }, |
9 | 58 | theme: {
|
10 | 59 | extend: {
|
11 | 60 | backgroundOpacity: {
|
|
0 commit comments