diff --git a/packages/vite/src/shared/hmr.ts b/packages/vite/src/shared/hmr.ts index 85b0916c5f4f5f..aa44ab5e48b0d2 100644 --- a/packages/vite/src/shared/hmr.ts +++ b/packages/vite/src/shared/hmr.ts @@ -219,12 +219,14 @@ export class HMRClient { if (disposer) return disposer(this.dataMap.get(path)) }), ) - paths.forEach((path) => { - const fn = this.pruneMap.get(path) - if (fn) { - fn(this.dataMap.get(path)) - } - }) + await Promise.all( + paths.map((path) => { + const fn = this.pruneMap.get(path) + if (fn) { + return fn(this.dataMap.get(path)) + } + }), + ) } protected warnFailedUpdate(err: Error, path: string | string[]): void {