gpt4 book ai didi

javascript - 如何在树的下方更新 redux 状态

转载 作者:搜寻专家 更新时间:2023-11-01 04:22:57 25 4
gpt4 key购买 nike

对于给定的 reducer,我的 redux 状态树通常看起来像这样:

{
someField: 'some value',
// ... more fields
metadata: {
pending: false,
fetched: true,
}
}

通常,当我执行异步请求时,我会触发一个 SOME_ACTION_REQUEST 操作,它将 metadata.pending 属性设置为 true。当匹配的 SOME_ACTION_RESPONSESOME_ACTION_ERROR 事件稍后出现时,它会再次重置为 false。

但是,我更新状态的方式有点冗长:

case actions.SOME_ACTION_REQUEST: {
return {
...state,
metadata: { ...state.metadata, pending: true },
};
}

有更简单的方法吗?

Object.assign({}, state, { metadata: { pending: true } }) 也不是很可读。

最佳答案

这是执行不可变数据更新的一个非常典型的例子。您可能想通读新的 Structuring Reducers Redux 文档部分以获取更多信息,特别是 Prerequisite ConceptsImmutable Update Patterns页面。

关于javascript - 如何在树的下方更新 redux 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39792236/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com