鍍金池/ 問答/HTML/ Redux 何時更新數(shù)據(jù)?

Redux 何時更新數(shù)據(jù)?

<button>新增</button>
name age 操作
LearnShare 12 編輯
Mike 32 編輯

點擊新增編輯進入同一個組件

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

初始化數(shù)據(jù)在state

這樣在新增中一切都很好

但是當編輯的時候

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

這樣所有獲得的數(shù)據(jù)都被 mapprops里 可是我之前都寫在了 state中,

所以現(xiàn)在我能想到的就是在willreceiveprops生命周期重新setState

還能想的一種方式就是把初始化數(shù)據(jù)都放在 reducer 中,

這樣的話每次input值做修改都要發(fā)一個dispatch,和setState比較麻煩太多了。

不知道還有沒有什么好方法

回答
編輯回答
玩控

react沒有限制你使用原生js方法,給input寫個簡單的change事件不是問題,當然這只限于簡單的項目,如果復雜項目,還是建議用redux

2018年6月29日 03:15
編輯回答
凹凸曼

給組件一個ref,然后統(tǒng)一去調(diào)ref.setState去修改組件的state,就都不需要用redux了

2017年5月30日 00:22