diff --git a/packages/vite/src/node/plugins/define.ts b/packages/vite/src/node/plugins/define.ts index 16c930294da59f..0448327d660ed6 100644 --- a/packages/vite/src/node/plugins/define.ts +++ b/packages/vite/src/node/plugins/define.ts @@ -39,6 +39,7 @@ export function definePlugin(config: ResolvedConfig): Plugin { // during dev, import.meta properties are handled by importAnalysis plugin. // ignore replace import.meta.env in lib build const importMetaKeys: Record = {} + const importMetaFallbackKeys: Record = {} if (isBuild) { const env: Record = { ...config.env, @@ -47,7 +48,7 @@ export function definePlugin(config: ResolvedConfig): Plugin { for (const key in env) { importMetaKeys[`import.meta.env.${key}`] = JSON.stringify(env[key]) } - Object.assign(importMetaKeys, { + Object.assign(importMetaFallbackKeys, { 'import.meta.env.': `({}).`, 'import.meta.env': JSON.stringify(config.env), 'import.meta.hot': `false` @@ -63,6 +64,7 @@ export function definePlugin(config: ResolvedConfig): Plugin { ...(replaceProcessEnv ? processNodeEnv : {}), ...importMetaKeys, ...userDefine, + ...importMetaFallbackKeys, ...(replaceProcessEnv ? processEnv : {}) }