From fddfdd85bd8e74cee9457836db9c916453a904ac Mon Sep 17 00:00:00 2001 From: zhn Date: Sat, 12 Oct 2024 14:51:14 +0800 Subject: [PATCH] fix: solve issue during refresh (#160) --- src/utils/normalizeModuleFederationOptions.ts | 4 ++-- src/virtualModules/virtualRemoteEntry.ts | 7 ++++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/utils/normalizeModuleFederationOptions.ts b/src/utils/normalizeModuleFederationOptions.ts index 6fc071a..5e827ad 100644 --- a/src/utils/normalizeModuleFederationOptions.ts +++ b/src/utils/normalizeModuleFederationOptions.ts @@ -267,7 +267,7 @@ export interface NormalizedModuleFederationOptions { manifest: ManifestOptions | boolean; dev?: boolean | PluginDevOptions; dts?: boolean | PluginDtsOptions; - shareStrategy?: ShareStrategy; + shareStrategy: ShareStrategy; getPublicPath?: string; } @@ -343,6 +343,6 @@ export function normalizeModuleFederationOptions( dev: options.dev, dts: options.dts, getPublicPath: options.getPublicPath, - shareStrategy: options.shareStrategy, + shareStrategy: options.shareStrategy || 'version-first', }); } diff --git a/src/virtualModules/virtualRemoteEntry.ts b/src/virtualModules/virtualRemoteEntry.ts index a96f33f..af7bc25 100644 --- a/src/virtualModules/virtualRemoteEntry.ts +++ b/src/virtualModules/virtualRemoteEntry.ts @@ -126,9 +126,14 @@ export function generateRemoteEntry(options: NormalizedModuleFederationOptions): remotes: usedRemotes, shared: usedShared, plugins: [${pluginImportNames.map((item) => `${item[0]}()`).join(', ')}], - ${options.shareStrategy ? `shareStrategy: ${options.shareStrategy}` : ''} + ${options.shareStrategy ? `shareStrategy: '${options.shareStrategy}'` : ''} }); initRes.initShareScopeMap('${options.shareScope}', shared); + try { + await Promise.all(await initRes.initializeSharing('${options.shareScope}', {strategy: '${options.shareStrategy}'})); + } catch (e) { + console.error(e) + } initResolve(initRes) return initRes }