diff --git a/.changeset/good-shirts-cover.md b/.changeset/good-shirts-cover.md new file mode 100644 index 00000000000..887fa295d21 --- /dev/null +++ b/.changeset/good-shirts-cover.md @@ -0,0 +1,5 @@ +--- +'@module-federation/runtime': patch +--- + +Ensured createScript runtime hook always receives `attrs` diff --git a/packages/runtime/src/utils/preload.ts b/packages/runtime/src/utils/preload.ts index ddb94c66adb..8edeb1baeb8 100644 --- a/packages/runtime/src/utils/preload.ts +++ b/packages/runtime/src/utils/preload.ts @@ -82,9 +82,10 @@ export function preloadAssets( getRemoteEntry({ remoteInfo: moduleInfo, remoteEntryExports: module.remoteEntryExports, - createScriptHook: (url: string) => { + createScriptHook: (url: string, attrs: any) => { const res = host.loaderHook.lifecycle.createScript.emit({ url, + attrs, }); if (!res) return; @@ -108,9 +109,10 @@ export function preloadAssets( getRemoteEntry({ remoteInfo: moduleInfo, remoteEntryExports: undefined, - createScriptHook: (url: string) => { + createScriptHook: (url: string, attrs: any) => { const res = host.loaderHook.lifecycle.createScript.emit({ url, + attrs, }); if (!res) return; @@ -212,9 +214,10 @@ export function preloadAssets( fetchpriority: 'high', type: remoteInfo?.type === 'module' ? 'module' : 'text/javascript', }, - createScriptHook: (url: string) => { + createScriptHook: (url: string, attrs: any) => { const res = host.loaderHook.lifecycle.createScript.emit({ url, + attrs, }); if (res instanceof HTMLScriptElement) { return res;