feat: refactor Vite plugin loading mechanism and improve plugin management
All checks were successful
CI/CD Pipeline / playwright (push) Successful in 3m3s
CI/CD Pipeline / build-and-deploy (push) Successful in 2m6s

This commit is contained in:
严浩
2025-12-12 00:09:53 +08:00
parent 7f1811098f
commit 9e050306bb
21 changed files with 370 additions and 260 deletions

View File

@@ -1,13 +1,16 @@
import type { ConfigEnv, PluginOption } from 'vite';
import { loadEnv } from 'vite';
import type { LoadPluginFunction } from './_loadPlugins';
export default [
// ...
] satisfies PluginOption;
export const loadPlugin: LoadPluginFunction = (_pluginLoadOptions) => {
const env = _pluginLoadOptions.env;
export function loadPlugin(_configEnv: ConfigEnv): PluginOption {
const env = loadEnv(_configEnv.mode, process.cwd());
console.debug(`env :>> `, env);
// ...
return undefined;
}
// 示例:根据环境变量禁用插件并返回消息
if (env.VITE_DEMO_ENABLED !== 'true') {
return {
plugins: [],
message: `已通过环境变量禁用: VITE_DEMO_ENABLED=${env.VITE_DEMO_ENABLED}`,
};
}
// 正常返回插件
return [];
};