【问题标题】:react redux updating state on input change在输入更改时对 redux 更新状态做出反应
【发布时间】:2018-01-02 17:00:12
【问题描述】:

我正在使用具有 14 个输入标签的 react redux 制作页面。

每个输入标签都有 14 个不同的状态名称。

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

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

【问题讨论】:

    标签: reactjs redux


    【解决方案1】:

    当然,您必须重构您的应用以执行单个操作,例如:

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

    然后在你的减速器中:

    case 'UDPATE':
      const { field, value } = action.payload;
    
      return { ...state, { [field]: value }};
    

    【讨论】:

      【解决方案2】:

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

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

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

      在你的减速器中:

      case 'UPDATE_FIELD':
        return {
          ...state,
          ...data,
        };
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-11-27
        • 1970-01-01
        • 2020-02-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-10-21
        相关资源
        最近更新 更多