27 lines
987 B
JavaScript
27 lines
987 B
JavaScript
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
|
|
}
|