我如何清除状态的一部分

烟的

有一种清除状态片段的优雅方法吗?我的状态中有7片数据,我希望在擦除其余数据时保持活动状态。我是否需要遍历每个reducer并手动擦除每个中的切片,还是有另一种方法?

提前致谢...

肖恩权

您可以执行以下操作:

const resetState = () => ({
  type: 'RESET_STATE'
})

const appReducer = combineReducers({
  /* your app’s top-level reducers */
})

const rootReducer = (state, action) => {
  if (action.type === 'RESET_STATE') {
    state = undefined
  }

  return appReducer(state, action)
}

function resetAndUpdateOneSlice() {
  return (dispatch, getState) {
    const slice = Object.assign({}, getState().slice) 
    //assuming your slice is an object
    //just want to demonstrate cloning your data before you reset your state.
    dispatch(resetState())
    dispatch(updateSliceOfState(slice))
  }
}

这是一个可能的解决方案-纯函数和thunk的混合-尽管我不确定为什么要重置状态的这么多部分。并不是我要谴责您的决定,我只是想找出一个并非完全人为设计的用例。

由于我们使用的是纯函数,因此以下是可能的。

另外,我引用了这篇文章,因为它很有帮助。

如何重置Redux存储的状态?

希望这可以帮助

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何清除画布的一部分?

如何仅更改状态的一部分?

PorterduffXfermode:清除位图的一部分

清除页面一部分的引导样式

清除关联数组的一部分

PHP错误输出清除了我的html布局的一部分

Promise 作为 redux 状态的一部分

如何在休眠状态下仅审计超类的一部分?

如何在状态更改时重新渲染组件的一部分?

如何使用 redux-persist 仅存储一部分 redux 状态

侧边菜单如何覆盖状态栏的一部分

如何从子组件仅更改状态的一部分反应钩子

我是僵尸网络的一部分吗?

Safari删除我的段落的一部分

我如何使我的Regex非贪婪的一部分?

我如何告诉gcc我的内联汇编函数是堆栈的一部分?

如何一次编辑我的 csv 文件的一部分?

Excel在复制时弄乱了我的公式,如何停止停止更改其中一部分而不更改另一部分?

如何检查我的字符串是联合类型的一部分

Git&Intellij,我如何只提交更改文件的一部分

我如何编译(运行)C# 中的一部分代码?

如何使我的代码的一部分可供多个活动访问

我如何可以专注于GoogleMap的某一部分

我如何迭代从Mongodb返回的arrayList作为结果的一部分?

如果我们只知道className的一部分,如何删除className?

如何将我的/ boot分区合并为/分区的一部分?

如何使我的句子的一部分左对齐并保持右对齐

如果路径的最后一部分是变量,如何使我的网页的 URL 起作用?

我如何才能将列表的一部分放在特殊元素的前面?