React Native Picker不更新状态

时间:2019-03-21 16:56:37

标签: android react-native picker setstate

我正在开发React本机应用程序。因为我正在使用选择器来选择项目并更新状态。 M问题是选择器未更新下面的状态是我的代码

constructor(props){
    super(props)

    this.state=({
        category:'',
    })

    getPickerElements() {
        var pickerArr = [];
        data.forEach((child, itemIndex) => {
            pickerArr.push(<Picker.Item label={child.storeName} value={child.storeId} key={itemIndex}/>)
        })

        return pickerArr;
    }

    <Picker
        selectedValue={this.state.category}

        onValueChange={(itemvalue) =>{
            this.setState({category: itemvalue})
        }}>

        {/* -------------------Dynamic Picker Data------------------ */}
        {this.getPickerElements()}
        {/* -------------------------------------------------------- */}
    </Picker>
  

为了记录,“数据”具有数据并且下拉列表正常工作

2 个答案:

答案 0 :(得分:1)

onValueChange需要更改值,如果要进行本机反应,我们需要提供一个默认值(选定值),该默认值可能是我们数据中的选项,或者只是一个标签项。这样,所有其他项目在被选择时都会调用onvaluechange方法。

答案 1 :(得分:0)

这是本机选择器本身的问题。我只添加了一个项目。第一项不会在本机android中使用setState。当我添加2个项目并选择第二个项目时,效果很好