猿问

Redux 何时更新数据?

<button>新增</button>
nameage操作
LearnShare12编辑
Mike32编辑

点击新增编辑进入同一个组件

this.state = {
    form:{
        name:'',
        age:''
    }
}
<input value={this.state.name} onClick={(value)=>this.setState({name:value})}/>

初始化数据在state

这样在新增中一切都很好

但是当编辑的时候

@connect(   state=>state.table
)
didmount(){
 dispath(getData(id))
}

这样所有获得的数据都被 map 到 props里 可是我之前都写在了 state中,

所以现在我能想到的就是在willreceiveprops生命周期重新setState

还能想的一种方式就是把初始化数据都放在 reducer 中,

这样的话每次input值做修改都要发一个dispatch,和setState比较麻烦太多了。

不知道还有没有什么好方法


回首忆惘然
浏览 830回答 2
2回答

largeQ

react没有限制你使用原生js方法,给input写个简单的change事件不是问题,当然这只限于简单的项目,如果复杂项目,还是建议用redux

扬帆大鱼

给组件一个ref,然后统一去调ref.setState去修改组件的state,就都不需要用redux了
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答