首页 > 解决方案 > React Native Picker 不更新状态

问题描述

我正在开发一个反应原生应用程序。因为我正在使用选择器来选择项目并更新状态。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>

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

标签: androidreact-nativepickersetstate

解决方案


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


推荐阅读