组件未在 redux 状态更改时更新

B0rn2C0de

正如标题所说,我的组件连接到具有该connect功能的 redux 存储,但不会触发特定情况下状态更改的更新,而在其他情况下运行良好。

正在修改状态的变量具有以下结构

state: {
  billDetails: {
    productType1: {...},
    productType2: {...},          
    productType3: {...},
    productType4: {
      accountId1 : [
        {invoiceNo:1, isChecked: true},
        {invoiceNo:2, isChecked: false}  
      ],
      accountId2: [...]
    }
  }
}

我正在尝试从一个成功发生的减速器更改 ischecked 的错误,因为我可以看到它在 react-native 调试器中发生了变化,但是组件本身没有得到更新。

这是针对该特定情况的我的减速器代码的代码

{
  const { accountId, invoiceNo, isChecked } = action.payload;
  const billDetails = result(state.billDetail, `${action.payload.productType}.${accountId}`, []);
  const billDetailsModified = billDetails.map((bill) => {
    if (bill.invoiceNo === invoiceNo) {
      bill.isChecked = isChecked;
    }
    return bill;
  });
  const newState = Object.assign({}, state);
  newState.billDetail[action.payload.productType][accountId] = billDetailsModified;
  return newState;
}

该组件使用连接到函数中billdetails对象mapStateToPropsbillDetail: result(state, 'billUsage.billDetail', {})

神学

Object.assign 复制属性值,因此复制对象引用,因此 state.billDetail 和 newState.billDetail 引用同一个对象。因此,您正在改变原始状态,这使状态变为not updating.

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Redux 存储不会在状态更改时更新组件视图

来自分类Dev

ReactJs - Redux 状态未在子组件的下拉列表中更新

来自分类Dev

reactjs表示组件在redux状态更改时未重新呈现

来自分类Dev

状态更改时组件不更新

来自分类Dev

当Redux状态更改时,React-Redux渲染组件在屏幕上出现两次

来自分类Dev

当Redux状态更改时,React-Redux渲染组件在屏幕上出现两次

来自分类Dev

React:子组件未在父状态更改时呈现

来自分类Dev

如何在Redux中根据状态更改更新组件

来自分类Dev

React + Redux-状态更改后组件不会更新

来自分类Dev

React-redux组件不会在商店状态更改时重新呈现

来自分类Dev

React + Redux:组件不会在状态更改时重新呈现

来自分类Dev

React-redux:无法在父状态更改时触发子组件操作

来自分类Dev

React JS组件不会在状态更改时更新

来自分类Dev

父状态更改时子组件不会更新

来自分类Dev

状态存储未在 redux 中正确更新

来自分类Dev

当redux状态更改时更改tabBarIcon

来自分类Dev

使用 redux 结构执行任务后,组件未在 react-native 中更新

来自分类Dev

react-redux 更新 redux 存储但不更新组件状态

来自分类Dev

redux 状态更改时如何导航?

来自分类Dev

使用 Redux 更改根组件的状态/道具?

来自分类Dev

Redux子项未更新父组件状态

来自分类Dev

通过外部状态更改(Redux)更新/重绘Mithril组件视图

来自分类Dev

Redux不更新组件

来自分类Dev

一个更改时如何更新每个映射的组件中的组件状态

来自分类Dev

组件道具更改后更新Redux存储

来自分类Dev

组件尺寸更改时未清除状态

来自分类Dev

功能组件在状态更改时重新呈现

来自分类Dev

在状态更改时对文本字段的onChange做出反应,更新整个组件

来自分类Dev

React Native:基于Array.map()的渲染组件不会在状态更改时更新

Related 相关文章

  1. 1

    Redux 存储不会在状态更改时更新组件视图

  2. 2

    ReactJs - Redux 状态未在子组件的下拉列表中更新

  3. 3

    reactjs表示组件在redux状态更改时未重新呈现

  4. 4

    状态更改时组件不更新

  5. 5

    当Redux状态更改时,React-Redux渲染组件在屏幕上出现两次

  6. 6

    当Redux状态更改时,React-Redux渲染组件在屏幕上出现两次

  7. 7

    React:子组件未在父状态更改时呈现

  8. 8

    如何在Redux中根据状态更改更新组件

  9. 9

    React + Redux-状态更改后组件不会更新

  10. 10

    React-redux组件不会在商店状态更改时重新呈现

  11. 11

    React + Redux:组件不会在状态更改时重新呈现

  12. 12

    React-redux:无法在父状态更改时触发子组件操作

  13. 13

    React JS组件不会在状态更改时更新

  14. 14

    父状态更改时子组件不会更新

  15. 15

    状态存储未在 redux 中正确更新

  16. 16

    当redux状态更改时更改tabBarIcon

  17. 17

    使用 redux 结构执行任务后,组件未在 react-native 中更新

  18. 18

    react-redux 更新 redux 存储但不更新组件状态

  19. 19

    redux 状态更改时如何导航?

  20. 20

    使用 Redux 更改根组件的状态/道具?

  21. 21

    Redux子项未更新父组件状态

  22. 22

    通过外部状态更改(Redux)更新/重绘Mithril组件视图

  23. 23

    Redux不更新组件

  24. 24

    一个更改时如何更新每个映射的组件中的组件状态

  25. 25

    组件道具更改后更新Redux存储

  26. 26

    组件尺寸更改时未清除状态

  27. 27

    功能组件在状态更改时重新呈现

  28. 28

    在状态更改时对文本字段的onChange做出反应,更新整个组件

  29. 29

    React Native:基于Array.map()的渲染组件不会在状态更改时更新

热门标签

归档