如何使用Redux更新对象数组内的状态?

时间:2019-03-21 23:19:35

标签: javascript arrays reactjs object redux

我的应用程序有2个标签,我需要根据单击标签修改内容 我处于这种状态:

const example = {
  tabs: [
    {
      id: 111,
      title: 'Python',
      icon: 'Python@2x.svg',
      content: 'Hello World'
    },
    {
      id: 333,
      title: 'EQL',
      icon: 'EQL@2x.svg',
      content: 'Hello World 2'
    }
  ]
}

,我需要更改标签内的“内容”。我尝试过:

return {
    ...state,
    tabs: {
      ...state.tabs,
      content: 'Uhuuuul'
    }
}

但这没用!有人可以解释为什么吗?

1 个答案:

答案 0 :(得分:1)

使用map

return {
    ...state,
    tabs: state.tabs.map(tab => ({...tab, content: "Uhuuuul"}))
}