mirror of
https://github.com/facebook/react-native.git
synced 2024-11-21 12:39:27 +00:00
13780126d3
Summary: This PR fixes the code for generating EventEmitter C++ code in case nested objects in arrays are used. ```typescript export interface NativeProps extends ViewProps { onEvent: DirectEventHandler< Readonly<{ payloadArray: Readonly< { obj: Readonly<{ str: string }> }[] > }> >; } export default codegenNativeComponent<NativeProps>('SomeComponent'); ``` In this case the generated `EventEmitters.cpp` code would contain: ```c obj.setProperty(runtime, "str", payloadArrayValue,obj.str); ``` while ```c obj.setProperty(runtime, "str", payloadArrayValue.obj.str); ``` is expected. ## Changelog: <!-- Help reviewers and the release process by writing your own changelog entry. Pick one each for the category and type tags: [ANDROID|GENERAL|IOS|INTERNAL] [BREAKING|ADDED|CHANGED|DEPRECATED|REMOVED|FIXED|SECURITY] - Message For more details, see: https://reactnative.dev/contributing/changelogs-in-pull-requests --> [GENERAL] [FIXED] - Codegen: Support nested objects in arrays Pull Request resolved: https://github.com/facebook/react-native/pull/47514 Test Plan: Tested with the reproduction case above to verify correct output. Reviewed By: javache Differential Revision: D65848670 Pulled By: elicwhite fbshipit-source-id: 0021e87bc7213fff615465cab8554cc1a2159522 |
||
---|---|---|
.. | ||
e2e | ||
scripts | ||
src | ||
.babelrc | ||
.prettierrc | ||
package.json | ||
README.md |
@react-native/codegen
Installation
yarn add --dev @react-native/codegen
Note: We're using yarn
to install deps. Feel free to change commands to use npm
3+ and npx
if you like
Testing
To run the tests in this package, run the following commands from the React Native root folder:
yarn
to install the dependencies. You just need to run this onceyarn jest packages/react-native-codegen
.