问题标签 [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.
reactjs - Redux 状态显示为 Map,无法访问 combineReducers 属性
在 mapStateToProps 中,它应该像访问所需状态部分的密钥一样简单,并获取 state 参数,但我无法这样做。
主 app.js 文件
configureStore.js
应用减速器
主要组件(缩小以节省空间)
所以。当我注销 mapStateToProps 正在接收的“状态”时,它是一个 Map,而不是一个对象,看起来像这样:
为什么我的状态看起来不像我看过的任何教程?我一直找不到像这样的任何其他示例,除了一个说只是手动迭代的示例 - 但由于这不是“正确”的方式,我必须错误地配置存储
我应该注意到,开发人员工具似乎能够完美地访问状态,并反映我期望看到的内容。为什么我无法访问 state.app.accounts
javascript - ReactJS 和 Redux - TypeError:state.reduxCart 不可迭代
我正在尝试在 redux 中插入项目,但是当我单击按钮时出现以下错误:
我的减速器代码:
这是我的商店代码:
我的行动代码:
如何解决这个问题?任何帮助,将不胜感激。
reactjs - 在react redux和saga中调度完成后获取状态变量?
您好,我对 React、Redux 和 Saga 还很陌生。所以我有一个场景,我有一个 .jsx 文件,它是视图文件,然后是一个用于调度的操作文件,我还使用 saga 来更新减速器中的数据。以下是文件结构:
- 动作文件:
- 减速机文件
- 佐贺文件
- .jsx 文件
现在我需要在调度完成更新数据后访问数据的更新状态,因为在数据更新后我必须 setDummy 来设置提到的虚拟变量。我可以采取的任何方式来实现这一目标。我曾尝试使用 dispatch.then 但在 UI 上它说 .then 不是调度函数。
reactjs - React createSlice 的 extraReducers 的状态访问
我有以下代码:
没有引用日志的console.log(state);
状态,因此我无法向其中添加新条目。什么控制台打印:
我以减少模板的 counterSlice 为例来构建它,以及他们的作品。
我究竟做错了什么?
reactjs - useReducer:无法使用 userReducer 获取初始状态
我已经实现了 useReducer 来根据动作类型分派动作,并且每次我根据动作类型更新状态变量时,但在尝试读取初始状态时总是会出错。可能我的代码可以解释更多。
我在尝试读取 initialLoginState.isLoading 时遇到错误。
App.js 代码:
错误:
reactjs - 无法从 redux 存储中的 reducer 读取属性
我正在尝试在反应应用程序中使用 redux。我已经设置了 redux 并配置了 store,并将 store 提供给了包装整个应用程序的 Provider。我无法从商店访问任何财产。
我的 Index.js 如下
store.js
减速器
当我尝试使用 mapStateToProps 从减速器访问任何属性时,如下所示
我收到一条错误消息
TypeError:无法读取未定义的属性“步骤”
我在这里做错了什么?
javascript - React redux useSelector 和参数
我试图理解为什么我似乎无法将参数传递给选择器。
本质上:我有一个存储数字和布尔值的逻辑 - 数字是我想要选择材料元素的参数 - 我有一个调度动作的按钮:
它分派到逻辑切片:
我正在尝试通过单击按钮来显示“工作”的相关材料。我正在使用 createReducer 函数模式,我对如何实现这一点有点迷茫 - 有没有更简洁的方法来使用带有属性的选择器?
javascript - 调用后端后,动作函数总是在 React 中返回相同的减速器类型
所以我在完成我的 2FA 方法的最后一步,现在我需要检测用户是否启用了他的方法并实现这一点,我创建了一个返回以下内容的函数:
该功能位于后端,到目前为止它运行良好,或者至少这是我想要相信的。login
话虽如此,我每次提交表单时都会进入我的登录组件并触发该功能:
在上面的代码中并试图展示我正在尝试完成的内容是“如果 X 为真,则仅显示此组件”。然而,该函数根本不完全工作,因为它总是最终调用第一个减速器类型,这是登录函数:
后端工作得很好!它返回了它应该返回的数据,我相信这个问题存在于我的减速器中,它是这样的:
希望这足以解释,否则请随时请求更多信息。
谢谢!。