在输入变化时对redux更新状态做出反应

时间:2018-01-02 17:00:13

标签: reactjs redux

我正在使用react redux制作一个页面,它有14个输入标签。

对于每个输入标记,我有14个不同的州名。

如果任何输入发生变化,我该怎么做才能更新状态?

我是否需要为每个输入标签编写动作和缩减器?

2 个答案:

答案 0 :(得分:7)

当然,您必须重构您的应用以执行以下操作:

{ type: 'UPDATE', field: '<name of your field>', value: <value here> }

然后在你的减速机中:

case 'UDPATE':
  const { field, value } = action.payload;

  return { ...state, { [field]: value }};

答案 1 :(得分:0)

如果要更新一个reducer中的属性,可以执行以下操作:

在对象中调度更新的值,然后将其与reducer中的先前状态合并。

dispatch({
  type: 'UPDATE_FIELD',
  data: { banana: 'yellow' },
});

在你的减速机中:

case 'UPDATE_FIELD':
  return {
    ...state,
    ...data,
  };
相关问题