问题标签 [redux-toolkit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1462 浏览

redux-toolkit - 将项目添加到 redux-toolkit 中的嵌套数组

Redux Toolkit 在尝试更新嵌套数组上的状态时给了我突变错误,我认为它正在使用 immer 来解决这个问题并简化减速器。

我的商店看起来像:

状态 -> 表格 -> 部分

我想在现有表单中添加一个部分。

我的动作需要一个表格和一个部分

减速机看起来像

在调度中检测到状态突变,在路径中:FormsReducer.forms.0.__formSections.0

然而,根据 redux-toolkit 文档,应该可以“编写”可变的“不可变更新逻辑”......

我做错了什么,我该如何解决?

0 投票
7 回答
13430 浏览

reactjs - 错误:一个沉浸式生产者返回了一个新值*并*修改了它的草稿。返回一个新值*或*修改草稿

我有我的减速机

我有我的调度命令

当我按下按钮时,我得到的是这个错误:

在此处输入图像描述

我已经隔离了所有内容,以确保这是问题所在,仅此而已。

为什么会弹出这个错误?

0 投票
1 回答
424 浏览

reactjs - 每当发生新更改而不使用 redux 重新加载页面时,都无法更新表

我在同一页面中有 2 个表格组件:Resolved CasesAffected Cases. 每当我更新 Affectd Cases 表中的一行并对其进行验证时,它都会显示在Resolved Cases组件上。

AffectedCases.tsx:

受影响的案例.ts:

已解决案例.tsx:

解决案例切片.ts:

ResolvedCases组件仅在我刷新页面时更新,这是由于:

是否有任何解决方案可以在不刷新页面的情况下更新 ResolvedCases 表?

0 投票
1 回答
554 浏览

javascript - 如何在浏览器中打开 Redux Toolkit 的生产模式?

我真的很喜欢 Redux Toolkit,但它有一些我知道我可以安全忽略的警告(操作中的不可序列化值被发送到某些 thunk;在这种情况下是一个 API)但我想确保它们不显示在随附的应用程序中。

当我将完成的版本部署到浏览器时,我似乎找不到如何打开生产模式,该模式会跳过“可序列化状态不变的中间件”。我知道我可以修改中间件列表来避免它,但这似乎很笨拙。

0 投票
1 回答
949 浏览

javascript - Redux-Toolkit 和 React Hooks - 存储更改不会触发重新渲染

每当 URL 包含带有 ID 的查询参数时,我都会尝试使用来自数据库的信息预先填充表单。从数据库中获取信息时,我无法使网站触发重新渲染。组件中的相关代码如下所示。

在此处输入图像描述

我们可以看到 Redux 操作被触发,并且文章状态在商店中更新。我还尝试console.log在钩子内部验证它是否运行,但它只在初始渲染时运行。如果我initialState在切片中更改,那么它会反映在表格中。

奇怪的是,如果我在页面上保存代码,热重新加载确实会更新它并触发重新渲染,正确填充表单。

请注意,我使用的是Redux-Toolkit,因此是切片语法。

0 投票
1 回答
2974 浏览

reactjs - 在 Redux Toolkit 中使用 createSlice 动态加载 initialState

是否有众所周知的模式将动态初始状态的有效负载注入 Redux-Toolkit 的 initialState 对象?

也就是说,我想这样做 -

例如,{availableRooms: []}是一个空数组,除非在 init 上注入数据{availableRooms: [{...}]}

这种模式不起作用,但是,b/c 我想将操作导出为可调度的,就像这样-

我受到airbnblinting 规则的限制,所以我不能在 let 上导出 -

我所追求的功能在不使用createSlice. 我提出问题的原因是我在多个地方看到createSlicecreateAction+推荐createReducer,但我没有看到任何简单的方法来介绍我正在寻找的动态数据。

我对此一无所知,redux-orm但我认为我所追求的功能类似于这个 SO question

0 投票
1 回答
2286 浏览

redux-toolkit - Redux 工具包:是否有两个切片在 extraReducers 中相互引用彼此的操作?

我想要两个不同的切片来交叉引用彼此的操作,如下所示:

问题是我在尝试为 sliceA 设置 extraReducers 时收到未定义 sliceB 的错误。

为了清楚起见,我想将切片分开,但它们的某些操作会相互影响。

实现这一目标的好方法是什么?

0 投票
1 回答
1465 浏览

redux - 如何从 redux 工具包中获取动作类型

我从 redux 工具包创建了一个SliceusingcreateSlice并导出了我的操作,例如:

我正在尝试创建一个中间件来捕捉一些动作类型:

我想知道是否可以从我创建的切片中将动作类型作为常量获取?

0 投票
1 回答
24 浏览

redux-toolkit - 如何在 redux-toolkit 切片缩减器中为操作类型提供自定义匹配逻辑

我想创建一个使用运行时计算值匹配操作的减速器。用例是我通过以/pending等结尾的引用计数操作来自动管理繁忙指示器。

我想在这个新项目上使用 redux-toolkit,我意识到我可以创建一个 vanilla redux reducer,但如果可能的话,我更愿意保持一致。有没有办法连接一个切片,以便它使用自定义匹配来匹配它的减速器中的动作类型?

0 投票
1 回答
159 浏览

reactjs - ReduxToolkit:如何将存储更改同步到本地状态?

在我的组件中,我从 API 加载初始数据,如下所示:

但是localGroupState是空的却不groups是。我觉得我在这里错过了一个简单的技巧。非常感谢您的帮助。