import vue from '@vitejs/plugin-vue' import createAutoImport from './auto-import' import createSvgIcon from './svg-icon' import createCompression from './compression' import createSetupExtend from './setup-extend' import monacoPluginModule from 'vite-plugin-monaco-editor' // 2. 提取真正的插件函数(核心修正) const monacoEditorPlugin = monacoPluginModule.default || monacoPluginModule export default function createVitePlugins(viteEnv, isBuild = false) { const vitePlugins = [ vue(), // 配置 Monaco 插件 monacoEditorPlugin({ // 按需引入语言(减小打包体积),默认全部引入 languages: ['javascript', 'html', 'css', 'json', 'python', 'java'] }) ] vitePlugins.push(createAutoImport()) vitePlugins.push(createSetupExtend()) vitePlugins.push(createSvgIcon(isBuild)) isBuild && vitePlugins.push(...createCompression(viteEnv)) return vitePlugins }