Commit fea323cff18b80b0c9dbee72b7ffc85cd3f14bdf

Authored by vben
1 parent dc39567a

chore: css is no longer imported on demand

README.md
... ... @@ -131,7 +131,6 @@ If these plugins are helpful to you, you can give a star support
131 131  
132 132 - [vite-plugin-mock](https://github.com/anncwb/vite-plugin-mock) - Used for local and development environment data mock
133 133 - [vite-plugin-html](https://github.com/anncwb/vite-plugin-html) - Used for html template conversion and compression
134   -- [vite-plugin-style-import](https://github.com/anncwb/vite-plugin-style-import) - Used for component library style introduction on demand
135 134 - [vite-plugin-theme](https://github.com/anncwb/vite-plugin-theme) - Used for online switching of theme colors and other color-related configurations
136 135 - [vite-plugin-compression](https://github.com/anncwb/vite-plugin-compression) - Used to pack input .gz|.brotil files
137 136 - [vite-plugin-svg-icons](https://github.com/anncwb/vite-plugin-svg-icons) - Used to quickly generate svg sprite
... ...
README.zh-CN.md
... ... @@ -141,7 +141,6 @@ pnpm build
141 141  
142 142 - [vite-plugin-mock](https://github.com/anncwb/vite-plugin-mock) - 用于本地及开发环境数据 mock
143 143 - [vite-plugin-html](https://github.com/anncwb/vite-plugin-html) - 用于 html 模版转换及压缩
144   -- [vite-plugin-style-import](https://github.com/anncwb/vite-plugin-style-import) - 用于组件库样式按需引入
145 144 - [vite-plugin-theme](https://github.com/anncwb/vite-plugin-theme) - 用于在线切换主题色等颜色相关配置
146 145 - [vite-plugin-compression](https://github.com/anncwb/vite-plugin-compression) - 用于打包输出.gz|.brotil 文件
147 146 - [vite-plugin-svg-icons](https://github.com/anncwb/vite-plugin-svg-icons) - 用于快速生成 svg 雪碧图
... ...
build/vite/plugin/imagemin.ts deleted 100644 → 0
1   -// Image resource files used to compress the output of the production environment
2   -// https://github.com/anncwb/vite-plugin-imagemin
3   -import viteImagemin from 'vite-plugin-imagemin';
4   -
5   -export function configImageminPlugin() {
6   - const plugin = viteImagemin({
7   - gifsicle: {
8   - optimizationLevel: 7,
9   - interlaced: false,
10   - },
11   - optipng: {
12   - optimizationLevel: 7,
13   - },
14   - mozjpeg: {
15   - quality: 20,
16   - },
17   - pngquant: {
18   - quality: [0.8, 0.9],
19   - speed: 4,
20   - },
21   - svgo: {
22   - plugins: [
23   - {
24   - name: 'removeViewBox',
25   - },
26   - {
27   - name: 'removeEmptyAttrs',
28   - active: false,
29   - },
30   - ],
31   - },
32   - });
33   - return plugin;
34   -}
build/vite/plugin/index.ts
... ... @@ -4,12 +4,10 @@ import vueJsx from '@vitejs/plugin-vue-jsx';
4 4 import purgeIcons from 'vite-plugin-purge-icons';
5 5 import windiCSS from 'vite-plugin-windicss';
6 6 import VitePluginCertificate from 'vite-plugin-mkcert';
7   -//import vueSetupExtend from 'vite-plugin-vue-setup-extend';
8 7 import { configHtmlPlugin } from './html';
9 8 import { configPwaConfig } from './pwa';
10 9 import { configMockPlugin } from './mock';
11 10 import { configCompressPlugin } from './compress';
12   -import { configStyleImportPlugin } from './styleImport';
13 11 import { configVisualizerConfig } from './visualizer';
14 12 import { configThemePlugin } from './theme';
15 13 import { configSvgIconsPlugin } from './svgSprite';
... ... @@ -44,9 +42,6 @@ export function createVitePlugins(viteEnv: ViteEnv, isBuild: boolean) {
44 42 // vite-plugin-purge-icons
45 43 vitePlugins.push(purgeIcons());
46 44  
47   - // vite-plugin-style-import
48   - vitePlugins.push(configStyleImportPlugin(isBuild));
49   -
50 45 // rollup-plugin-visualizer
51 46 vitePlugins.push(configVisualizerConfig());
52 47  
... ...
build/vite/plugin/styleImport.ts deleted 100644 → 0
1   -/**
2   - * Introduces component library styles on demand.
3   - * https://github.com/anncwb/vite-plugin-style-import
4   - */
5   -import { createStyleImportPlugin, VxeTableResolve } from 'vite-plugin-style-import';
6   -
7   -export function configStyleImportPlugin(_isBuild: boolean) {
8   - if (!_isBuild) {
9   - return [];
10   - }
11   - const styleImportPlugin = createStyleImportPlugin({
12   - libs: [
13   - {
14   - libraryName: 'ant-design-vue',
15   - esModule: true,
16   - resolveStyle: (name) => {
17   - // 这里是无需额外引入样式文件的“子组件”列表
18   - const ignoreList = [
19   - 'anchor-link',
20   - 'sub-menu',
21   - 'menu-item',
22   - 'menu-divider',
23   - 'menu-item-group',
24   - 'breadcrumb-item',
25   - 'breadcrumb-separator',
26   - 'form-item',
27   - 'step',
28   - 'select-option',
29   - 'select-opt-group',
30   - 'card-grid',
31   - 'card-meta',
32   - 'collapse-panel',
33   - 'descriptions-item',
34   - 'list-item',
35   - 'list-item-meta',
36   - 'table-column',
37   - 'table-column-group',
38   - 'tab-pane',
39   - 'tab-content',
40   - 'timeline-item',
41   - 'tree-node',
42   - 'skeleton-input',
43   - 'skeleton-avatar',
44   - 'skeleton-title',
45   - 'skeleton-paragraph',
46   - 'skeleton-image',
47   - 'skeleton-button',
48   - ];
49   - // 这里是需要额外引入样式的子组件列表
50   - // 单独引入子组件时需引入组件样式,否则会在打包后导致子组件样式丢失
51   - const replaceList = {
52   - textarea: 'input',
53   - 'typography-text': 'typography',
54   - 'typography-title': 'typography',
55   - 'typography-paragraph': 'typography',
56   - 'typography-link': 'typography',
57   - 'dropdown-button': 'dropdown',
58   - 'input-password': 'input',
59   - 'input-search': 'input',
60   - 'input-group': 'input',
61   - 'radio-group': 'radio',
62   - 'checkbox-group': 'checkbox',
63   - 'layout-sider': 'layout',
64   - 'layout-content': 'layout',
65   - 'layout-footer': 'layout',
66   - 'layout-header': 'layout',
67   - 'month-picker': 'date-picker',
68   - 'range-picker': 'date-picker',
69   - 'image-preview-group': 'image',
70   - };
71   -
72   - return ignoreList.includes(name)
73   - ? ''
74   - : replaceList.hasOwnProperty(name)
75   - ? `ant-design-vue/es/${replaceList[name]}/style/index`
76   - : `ant-design-vue/es/${name}/style/index`;
77   - },
78   - },
79   - ],
80   - resolves: [VxeTableResolve()],
81   - });
82   - return styleImportPlugin;
83   -}
package.json
... ... @@ -180,10 +180,8 @@
180 180 "vite-plugin-mock": "^2.9.6",
181 181 "vite-plugin-purge-icons": "^0.8.1",
182 182 "vite-plugin-pwa": "^0.11.13",
183   - "vite-plugin-style-import": "^2.0.0",
184 183 "vite-plugin-svg-icons": "^2.0.1",
185 184 "vite-plugin-theme": "^0.8.6",
186   - "vite-plugin-vue-setup-extend": "^0.4.0",
187 185 "vite-plugin-windicss": "^1.8.4",
188 186 "vue-eslint-parser": "^8.3.0",
189 187 "vue-tsc": "^1.0.9"
... ...
src/main.ts
... ... @@ -3,6 +3,7 @@ import 'virtual:windi-components.css';
3 3 import '/@/design/index.less';
4 4 import '/@/components/VxeTable/src/css/index.scss';
5 5 import 'virtual:windi-utilities.css';
  6 +import 'ant-design-vue/dist/antd.css';
6 7 // Register icon sprite
7 8 import 'virtual:svg-icons-register';
8 9 import App from './App.vue';
... ... @@ -16,12 +17,6 @@ import { setupGlobDirectives } from '/@/directives';
16 17 import { setupI18n } from '/@/locales/setupI18n';
17 18 import { registerGlobComp } from '/@/components/registerGlobComp';
18 19  
19   -import { isDevMode } from './utils/env';
20   -
21   -if (isDevMode()) {
22   - import('ant-design-vue/es/style');
23   -}
24   -
25 20 async function bootstrap() {
26 21 const app = createApp(App);
27 22  
... ...