状态未设置为在响应本机的选择器中更改值

时间:2018-10-29 11:01:12

标签: react-native

嗨,我正在使用来自本地库的选择器组件。我正在从API中获取值。现在我想更改我的选择值,但是当我从所有这些中选择一个值时,我的状态就没有改变..这是我现在正在应用的选择器和功能代码..请帮助我我已经没时间了:(

<Item picker >
        <Left>
       <Text style={{paddingLeft:10,fontSize:15,fontWeight:'bold',color:this.state.backgroundColor}}>Current State</Text>
       </Left>
       <Body>
          <Picker 
            mode="dropdown"
            iosIcon={<Icon name="ios-arrow-down-outline" />}
            style={{ width: '100%' }}

            placeholder="Change state"

            placeholderStyle={{ color: "#bfc6ea" }}
            placeholderIconColor="#007aff"
           selectedValue={this.state.state_id}
            // onValueChange={this.onValueChange2.bind(this)}
           onValueChange={(value)=>this.valueChangeOFCountry(value)}
          >
            {myState}
          </Picker>
          </Body>

        </Item>


valueChangeOFCountry(value){

this.setState({updateCountry:value})


alert(this.state.updateCountry)

}

1 个答案:

答案 0 :(得分:3)

您的方法“ valueChangeOFCountry”的定义应与es6相同。 并等待setState更新您的状态。希望这会有所帮助

valueChangeOFCountry = (value) => {
this.setState({updateCountry: value}, 
  ()=> alert(this.state.updateCountry)
}