问题标签 [redux-reducers]

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 回答
17 浏览

redux - 在另一个动作中调用 redux 动作不起作用

我有控制台记录错误并且错误在控制台中可见但setAlert操作没有调度,这是为什么呢?

这是身份验证操作代码

这是警报动作

0 投票
2 回答
51 浏览

javascript - 尝试从嵌套的 redux 对象中删除所有项目并添加传入项目

我有低于减速器和低于初始状态。classinfo 是具有嵌套学生状态数组的父状态。使用下面的减速器,我计划(用新学生替换以前的学生)从以前的状态中删除所有学生,从“action.data.students”添加新学生并返回一个新状态。我第一次添加学生时没有问题,当我添加另一个学生时,我收到错误“在调度之间检测到状态突变”请告诉我,我做错了什么。

classInfo[ { Id:"", students:[] }]

0 投票
1 回答
204 浏览

reactjs - 如果不在所有减速器中放置“case LOGOUT”,则无法注销用户

我是 redux 的新手,并试图创建一个用户可以在其中:登录、注册和注销的小站点。

我为登录和注册创建了 2 个减速器,并且在两个减速器的状态下都初始化了一个“isLoggedIn”字段。

当尝试为注销创建第三个减速器时,将其添加到 CombineReducers 然后尝试登录/注册,它没有让我退出,它什么也不做。唯一有效的是,如果我只使用登录和注册减速器,并且在每个减速器上添加一个“案例 LOGOUT”。

但是,我觉得有一种更好的方法可以做到这一点,因为它将我的代码复制到所有需要注销功能的减速器上。

authentication.js(登录)

注册.js

减速器/index.js

路线/index.js

store.js

在 routes/index.js 中,我使用“isLoggedIn”字段来显示用户的特定页面取决于他是否登录。

上面的程序是我能够实现的唯一解决方案。

此外,如果重要的话,我所有的注销、登录和注册操作都在同一个文件中。

0 投票
2 回答
909 浏览

javascript - (从默认导出导入)Redux 中的根减速器是否自动称为“rootReducer”?

我正在阅读许多 Redux 教程,让我感到困惑的是,当使用组合 reducer 创建 Redux 存储时,通常会引用一个名称rootReducer作为 root reducer,尽管它从未主动命名。这是否类似于被利用的默认行为?因为它似乎是这样工作的。

我怀疑,这与方式有关,减速器与组合并导出

export default combineReducers.

这是一个例子:

./reducers/combined.js

然后,在./store.js中:

无论如何,经过长时间的搜索,我仍然找不到任何关于这种现象的参考。

0 投票
0 回答
30 浏览

reactjs - 在哪里放置转换 PDF 功能?

我有以下情况:

  1. 单击下载合同按钮时发送带有合同 ID 作为有效负载的 API 请求
  2. 获取 API 响应中的 pdfBuffer 字段
  3. 有一个可以将pdfButtfer转换为pdf文件的功能A

在 index.js 下的 Actions

我们可以直接调用Actions 文件夹下 index.js 中的函数 A还是需要将 pdfBuffer 分派到 reducer 并从连接到 redux 存储的容器组件中获取 pdfBuffer,然后在容器组件级别调用函数 A ?

请指教。多谢。

0 投票
0 回答
957 浏览

typescript - 如何在 typescript 中为 redux reducer 设置初始状态?

我收到此 TypeScript 错误属性“hasError”不存在于类型“(状态:ErrorType | undefined,操作:ErrorActionType)=> ErrorType”。我认为它抱怨为减速器设置初始状态。

这是我的行动

还有我的 reducer.index

这是应用程序状态类型

0 投票
1 回答
28 浏览

reactjs - 在 mapDispatchToProps 中使用 dispatch 时使用哪个 reducer?

我正在学习 Redux,我有两个 reducer,一个用来在页面上显示联系人的 contactReducer 和一个用来乱搞的 testReducer。在我的一个组件文件中,我有这个功能:

这是我的两个减速器文件:contactReducer:

和 testReducer:

因此,我从 reducer 文件中的 console.log 语句中注意到,对于每个联系人,contactReducer 和 testReducer 的函数都使用以下行调用:

如果我有多个 reducer,但我只想调用它们的一个函数进行调度,我会怎么做?

0 投票
0 回答
32 浏览

reactjs - 如何从另一个组件中的减速器初始状态中过滤一组对象?

好吧,我用 react 和 redux 创建了一个项目。在减速器初始状态中,我有一个对象数组。我使用地图在屏幕上分配项目,好的。但我的主要疑问是我创建了一个带有输入的过滤器组件,但我不知道如何按标题过滤对象,我不知道如何制作它,因为我的数组在减速器中。

减速器

主卡

卡片容器

这里过滤,不知道怎么办,如何过滤reducer数组的itens?

0 投票
1 回答
144 浏览

reactjs - 如何在 Redux 中更改 rootReducer 中的 initState

我是 Redux 的新手,我想知道是否可以根据 initState 中的另一种状态来更改一种状态?

=> 在这里我看到了总数,但是如果我把它放在 initState 里面我什么都没有

对我来说,其他问题是 rootReducer 中的总状态更改。我不明白为什么我的变量 let totalSum 在这两种情况下都不起作用?如果我提交其中一个,它适用于一种情况,如果两者都未提交,那么我得到错误 totalSum 已经被声明。

有什么建议么?我想重复一遍我是新来的:)

0 投票
1 回答
558 浏览

reactjs - 在 Redux reducer 中更新对象中的值

我希望根据用户输入更新嵌套对象中的值。例如,如果用户选择更新他们的国家和街道,只有这些值将作为 action.payload 传递给 reducer 并更新(其余状态将保持不变)。我提供了我的初始状态和减速器:

我的状态:

任何帮助都会很棒,谢谢!!