1. 程式人生 > >react setState()方法可以只修改一個對象的部分屬性

react setState()方法可以只修改一個對象的部分屬性

turn oai cti 部分 sig selected react cas this

使用Object.assign(),要註意不要返回原對象,應該返回一個新對象:

1、state 定義
state = {
  OAInfo: {app_name: ‘‘, user_id: ‘‘, app_login_id: ‘‘},
}
2、觸發的修改方法:
thisOAval(event) {
  let data = Object.assign({}, this.state.OAInfo, { app_login_id: event.target.value })
  this.setState({
    OAInfo: data
  })
}

在redux中 修改store對象中同理,對已記錄state屬性進行 filter 循環查詢,並替換對應元素後,整體賦值state對象。

case SELECTROLEPUSH: 
      return state.set(‘selectedRoles‘, state.get(‘selectedRoles‘).filter(item => (item.role_id !== action.payload.role_id)).push(action.payload))

react setState()方法可以只修改一個對象的部分屬性