尽管redux中的状态更改以及组件的props也更改,但页面不会重新渲染

时间:2020-04-25 09:53:05

标签: javascript reactjs redux

谁能解释一下如何在redux中更新状态?特别是一个数组。

 if(action.type === 'ADD_POST')
    {
      state.posts.push(action.obj)
      let newPosts = state.posts
      console.log(newPosts)
      return {
        ...state,
        posts: newPosts
      }

    }

1 个答案:

答案 0 :(得分:0)

要将帖子添加到帖子数组中,应该是

if (action.type === "ADD_POST") { 
  return [...state, action.obj]
}

这将添加一个元素,而不会使用Destructuring assignment

改变状态

顺便说一句: 抢劫https://redux-toolkit.js.org/,这是推荐的编写redux的新方法。它内置了不变性,这意味着您可以做到

state.push(action.payload)