remove defaultProps from picker of components (#31644)

Summary:
Remove `defaultProps` from `Picker` of components, replace it with destructuring assignment.

## Changelog

<!-- Help reviewers and the release process by writing your own changelog entry. For an example, see:
https://github.com/facebook/react-native/wiki/Changelog
-->

[JavaScript] [Changed] - Remove defaultProps from picker

close https://github.com/facebook/react-native/issues/31603

Pull Request resolved: https://github.com/facebook/react-native/pull/31644

Test Plan: all test suite and CI passes.

Reviewed By: TheSavior

Differential Revision: D28886320

Pulled By: lunaleaps

fbshipit-source-id: d88a922dffeebe2bce019250d460b5e43a0af562
This commit is contained in:
Kermit 2021-06-04 20:59:13 -07:00 коммит произвёл Facebook GitHub Bot
Родитель f3b8d4976f
Коммит b4cde15cdb
2 изменённых файлов: 4 добавлений и 8 удалений

Просмотреть файл

@ -166,24 +166,22 @@ class Picker extends React.Component<PickerProps> {
static Item: typeof PickerItem = PickerItem;
static defaultProps: {|mode: $TEMPORARY$string<'dialog'>|} = {
mode: MODE_DIALOG,
};
render(): React.Node {
const {mode = MODE_DIALOG, children, ...rest} = this.props;
if (Platform.OS === 'ios') {
/* $FlowFixMe[prop-missing] (>=0.81.0 site=react_native_ios_fb) This
* suppression was added when renaming suppression sites. */
/* $FlowFixMe[incompatible-type] (>=0.81.0 site=react_native_ios_fb) This
* suppression was added when renaming suppression sites. */
return <PickerIOS {...this.props}>{this.props.children}</PickerIOS>;
return <PickerIOS {...rest}>{children}</PickerIOS>;
} else if (Platform.OS === 'android') {
return (
/* $FlowFixMe[incompatible-type] (>=0.81.0 site=react_native_android_fb) This
* suppression was added when renaming suppression sites. */
/* $FlowFixMe[prop-missing] (>=0.81.0 site=react_native_android_fb) This
* suppression was added when renaming suppression sites. */
<PickerAndroid {...this.props}>{this.props.children}</PickerAndroid>
<PickerAndroid mode={mode}>{children} </PickerAndroid>
);
} else {
return <UnimplementedView />;

Просмотреть файл

@ -64,7 +64,6 @@ exports[`<Picker /> should render as expected: should deep render when not mocke
exports[`<Picker /> should render as expected: should shallow render as <Picker /> when mocked 1`] = `
<Picker
mode="dialog"
onValueChange={[MockFunction]}
selectedValue="foo"
>
@ -81,7 +80,6 @@ exports[`<Picker /> should render as expected: should shallow render as <Picker
exports[`<Picker /> should render as expected: should shallow render as <Picker /> when not mocked 1`] = `
<Picker
mode="dialog"
onValueChange={[MockFunction]}
selectedValue="foo"
>