diff --git a/src/ModuleLoader.ts b/src/ModuleLoader.ts index 7fd31350013..18e0458e8e4 100644 --- a/src/ModuleLoader.ts +++ b/src/ModuleLoader.ts @@ -549,12 +549,17 @@ export class ModuleLoader { }; } - private async handleExistingModule(module: Module, isEntry: boolean, isPreload: PreloadType) { + private async handleExistingModule( + module: Module, + isEntry: boolean, + isPreload: PreloadType + ): Promise { const loadPromise = this.moduleLoadPromises.get(module)!; if (isPreload) { - return isPreload === RESOLVE_DEPENDENCIES + await (isPreload === RESOLVE_DEPENDENCIES ? waitForDependencyResolution(loadPromise) - : loadPromise; + : loadPromise); + return; } if (isEntry) { module.info.isEntry = true; @@ -564,7 +569,7 @@ export class ModuleLoader { } module.implicitlyLoadedAfter.clear(); } - return this.fetchModuleDependencies(module, ...(await loadPromise)); + await this.fetchModuleDependencies(module, ...(await loadPromise)); } private handleResolveId( @@ -715,7 +720,7 @@ function isNotAbsoluteExternal( ); } -async function waitForDependencyResolution(loadPromise: LoadModulePromise) { +async function waitForDependencyResolution(loadPromise: LoadModulePromise): Promise { const [resolveStaticDependencyPromises, resolveDynamicImportPromises] = await loadPromise; - return Promise.all([...resolveStaticDependencyPromises, ...resolveDynamicImportPromises]); + await Promise.all([...resolveStaticDependencyPromises, ...resolveDynamicImportPromises]); }