mirror of
https://github.com/sunniejs/vue-h5-template.git
synced 2025-04-05 19:42:08 +08:00
56 lines
1.6 KiB
TypeScript
56 lines
1.6 KiB
TypeScript
/**
|
|
* @name createVitePlugins
|
|
* @description 封装plugins数组统一调用
|
|
*/
|
|
import type { Plugin } from 'vite';
|
|
import vue from '@vitejs/plugin-vue';
|
|
import vueJsx from '@vitejs/plugin-vue-jsx';
|
|
import vueSetupExtend from 'vite-plugin-vue-setup-extend';
|
|
import { ConfigSvgIconsPlugin } from './svgIcons';
|
|
import { AutoRegistryComponents } from './component';
|
|
import { AutoImportDeps } from './autoImport';
|
|
import { ConfigMockPlugin } from './mock';
|
|
import { ConfigCompressPlugin } from './compress';
|
|
import { ConfigPagesPlugin } from './pages';
|
|
import { ConfigRestartPlugin } from './restart';
|
|
import { ConfigProgressPlugin } from './progress';
|
|
import { ConfigEruda } from './eruda';
|
|
import { ConfigStyleImport } from './styleImport';
|
|
|
|
export function createVitePlugins(isBuild: boolean) {
|
|
const vitePlugins: (Plugin | Plugin[])[] = [
|
|
// vue支持
|
|
vue(),
|
|
// JSX支持
|
|
vueJsx(),
|
|
// setup语法糖组件名支持
|
|
vueSetupExtend(),
|
|
// 自动按需引入组件
|
|
AutoRegistryComponents(),
|
|
// 自动按需引入依赖
|
|
AutoImportDeps(),
|
|
// 自动生成路由
|
|
ConfigPagesPlugin(),
|
|
// 开启.gz压缩 rollup-plugin-gzip
|
|
ConfigCompressPlugin(),
|
|
// 监听配置文件改动重启
|
|
ConfigRestartPlugin(),
|
|
// 构建时显示进度条
|
|
ConfigProgressPlugin(),
|
|
];
|
|
|
|
//styleImport
|
|
vitePlugins.push(ConfigStyleImport());
|
|
|
|
// eruda
|
|
vitePlugins.push(ConfigEruda());
|
|
|
|
// vite-plugin-svg-icons
|
|
vitePlugins.push(ConfigSvgIconsPlugin(isBuild));
|
|
|
|
// vite-plugin-mock
|
|
vitePlugins.push(ConfigMockPlugin(isBuild));
|
|
|
|
return vitePlugins;
|
|
}
|