有人能解释一下如何在redux中更新状态吗?特别是一个数组。
if(action.type === 'ADD_POST')
{
state.posts.push(action.obj)
let newPosts = state.posts
console.log(newPosts)
return {
...state,
posts: newPosts
}
}
要将帖子添加到帖子数组中,它应该是
if (action.type === "ADD_POST") {
return [...state, action.obj]
}
这将添加一个元素,而不会使用破坏分配改变状态
Btw:在https://redux-toolkit.js.org/,这是推荐的一种新的redux书写方式。它内置了不变性,这意味着你可以只做
state.push(action.payload)