this.state={
setxzvalue:''
}
componentWillMount=()=>{
fetch('/api/user/loadDetail',{
method:'GET',
headers:{
'Content-Type': 'application/json'
},
credentials: 'include'
})
.then((res)=>res.json())
.then((res)=>{
if(res.num == 1){
this.setState({
setradiovalue:res.sex,
setxzvalue:res.xz,
disabled:true
})
}
console.log(this.state.setxzvalue)
})
}
render(){
<Select defaultValue={this.state.setxzvalue}></Select>
}
代码是这样的,情况是页面自动加载传来的res,然后去改变setxzvalue,从而动态改变select的默认显示,但是这样写没有效果。。不知道问题出在哪里了
按道理来说setState后render会重新渲染啊,但是defaultValue的值还是空值,在页面上看不到传来的res.xz,求大神分析一下原因,万分感谢!
initialValue
和defaultValue
一样,只有首次生效。你可以在获取到数据后用this.props.form.setFieldValue
设置对应的值, 或者从一开始就设置value
为this.state. setxzvalue