反应本机 - 选择器 - 未定义不是一个对象(评估 'this.props.children[position].props)

vin*_*nth 4 react-native

我在使用 Picker 时遇到奇怪的行为。

\n\n

我使用选择器如下:

\n\n
<Picker\n  mode="dropdown"\n  style={styles.pickerField}\n  selectedValue={this.state.dayAndTime}\n  onValueChange={(text) => this.setState({ dayAndTime: text })}\n>\n  <Picker.Item label="Le 5/07 \xc3\xa0 15H" value="0" key="0" />\n</Picker>\n
Run Code Online (Sandbox Code Playgroud)\n\n

当加载显示此选择器的屏幕时,我收到一个错误屏幕(参见下面的屏幕截图):未定义不是对象(评估 \'this.props.children[position].props)

\n\n

根据我收集的信息,我的问题来自 Libraries/Components/Picker/PickerAndroid.android.js 的第 106 行,似乎有一个属性“onValueChange”会触发它。我删除了它,并且没有发生错误。

\n\n

我使用react-native 0.31.0,我使用带有genymotion的android api 23虚拟设备。

\n\n

我做错了什么吗?

\n\n

在此输入图像描述

\n

小智 6

上述解决方案可能可以解决您的疑问。我要强调的一件事是,正确的导入方法:

import {Picker} from '@react-native-community/picker';
Run Code Online (Sandbox Code Playgroud)

而不是

import Picker from '@react-native-community/picker';
Run Code Online (Sandbox Code Playgroud)