-
-
Notifications
You must be signed in to change notification settings - Fork 206
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: support react-native #2812
base: main
Are you sure you want to change the base?
Conversation
|
✅ Deploy Preview for module-federation-docs ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
packages/runtime/src/module/index.ts
Outdated
@@ -32,7 +32,7 @@ class Module { | |||
const remoteEntryExports = await getRemoteEntry({ | |||
remoteInfo: this.remoteInfo, | |||
remoteEntryExports: this.remoteEntryExports, | |||
createScriptHook: (url: string, attrs: any) => { | |||
createScriptHook: (url, attrs) => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
was this because we have a implicit dependency ts lint rule? if not why were the typings dropped?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
typing comes from getRemoteEntry
type which was modified now, so these typings became redundant
The
|
@2heal1 tests fixed 🎉 I've added a more strict check for node env to account for that. |
The content is no problem , but i think we should put the For my thought , we can add a loaderHook named like Can you help to implement this ? If not, I will implement it next week and then merge this pr . |
Sure thing! What's the correct place for these runtime plugins to exist in the repo? Do we keep them in SDK? |
Much appreciate ! The plugin can be placed in runtime/plugins and re-export as subpath |
@@ -194,6 +196,60 @@ async function loadEntryNode({ | |||
}); | |||
} | |||
|
|||
async function loadEntryReactNative({ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
since you have added loadEntry
hook , you can add react-native
support by providing runtime plugin .
Like adding a plugin named react-native-plugin
here , and then add exports in package.json .
Users can use the runtimePlugin on demand.
Description
loadScript
andcreateScript
methods for React NativeCreateScriptHook
typingin node env we check for
process.versions.node
(source)in RN we check for
global.navigator
which is set during initialisation of React Native core (source)right now the whole loading process is handled internally through Re.Pack
Related Issue
#2811
Types of changes
Checklist