From c8ce8eba53e92ec714ad54b9bcdba0f73a205d0a Mon Sep 17 00:00:00 2001 From: harrywan Date: Mon, 8 Dec 2025 17:21:27 +0800 Subject: [PATCH] =?UTF-8?q?fix(builder):=20=E7=BB=9F=E4=B8=80=E4=BD=BF?= =?UTF-8?q?=E7=94=A8api.paths.cwd=E8=8E=B7=E5=8F=96=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E7=9B=AE=E5=BD=95=E8=B7=AF=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修改vite和webpack构建器的版本信息插件,不再直接使用process.cwd(),而是通过api.paths.cwd获取工作目录路径,确保路径获取的一致性 --- packages/builder-vite/src/features/versionEmit.ts | 2 +- packages/builder-webpack/src/plugins/features/versionEmit.ts | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/builder-vite/src/features/versionEmit.ts b/packages/builder-vite/src/features/versionEmit.ts index c6fad4e7..b793bb88 100644 --- a/packages/builder-vite/src/features/versionEmit.ts +++ b/packages/builder-vite/src/features/versionEmit.ts @@ -8,7 +8,7 @@ export default (api: IPluginAPI) => { const versionPlugin = { name: 'fes-version-emit', generateBundle() { - const pkgPath = join(process.cwd(), 'package.json'); + const pkgPath = join(api.paths.cwd, 'package.json'); let name = ''; let version = ''; if (existsSync(pkgPath)) { diff --git a/packages/builder-webpack/src/plugins/features/versionEmit.ts b/packages/builder-webpack/src/plugins/features/versionEmit.ts index 6d629e5a..4aaad6f7 100644 --- a/packages/builder-webpack/src/plugins/features/versionEmit.ts +++ b/packages/builder-webpack/src/plugins/features/versionEmit.ts @@ -5,10 +5,11 @@ import process from 'node:process'; import webpack from 'webpack'; class VersionEmitPlugin { + constructor(private cwd: string) {} apply(compiler: webpack.Compiler) { compiler.hooks.thisCompilation.tap('VersionEmitPlugin', (compilation) => { compilation.hooks.processAssets.tap({ name: 'VersionEmitPlugin', stage: webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONAL }, () => { - const pkgPath = join(process.cwd(), 'package.json'); + const pkgPath = join(this.cwd, 'package.json'); let name = ''; let version = ''; if (existsSync(pkgPath)) { @@ -41,7 +42,7 @@ class VersionEmitPlugin { export default (api: IPluginAPI) => { api.modifyBundleConfig((memo: any) => { memo.plugins = memo.plugins || []; - memo.plugins.push(new VersionEmitPlugin()); + memo.plugins.push(new VersionEmitPlugin(api.paths.cwd)); return memo; }); };