问题标签 [redux-middleware]

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 投票
2 回答
892 浏览

redux - redux-saga 与 redux-saga - 不保存

我正在尝试将 redux-storage 和 redux-saga 中间件用于 redux。每个中间件单独工作都很好,但是当我使用 redux-saga 应用 redux-storage 时,存储不会加载先前的状态。我添加中间件如下:

0 投票
1 回答
725 浏览

javascript - redux-api-middleware 如何为端点做全局设置

我们redux-api-middleware可以像下面这样创建一个 API 调用,

问题是,对于每个请求,我都使用公共端点 http://localhost:1337标头内容类型和授权令牌 设置。

我需要一个地方来全局设置这些设置,从他们的官方文档中找不到解决方案。有人知道这个吗?或有任何想法来实现这一目标?

提前致谢..

0 投票
1 回答
726 浏览

reactjs - 使用 redux-middleware 和 redux-thunk 的通用 API 调用

我试图创建一个处理我所有 APIS 的中间件。

存储配置

在我的商店中,我正在添加 apiMiddleware 以使用[CALL_API]. 除此之外,我还使用 extraArgument 添加了 redux-thunk 来访问我在调度方法中创建的通用 API。

减速器

行动

中间件 API

这是行不通的。但是,如果我将中间件代码放在我的操作函数下,它就可以正常工作。

0 投票
1 回答
830 浏览

reactjs - 你应该在 Redux 中间件中多次调度或调用 next 吗?

我很好奇,我在中间件中看到过,比如redux-promise-middleware我们希望一个动作触发多个动作(例如请求、成功、失败)。但是,在中间件中,我们提供了dispatch能够执行dispatch这些操作的功能。是否有理由使用next(action)over调用这些附加操作dispatch(action)

0 投票
1 回答
113 浏览

reactjs - 如何在 redux 中编写登录逻辑?

我是redux的新手。我正在尝试让用户登录。

我只想了解通过操作发送信息的逻辑。

我希望用户输入用户名和密码并登录,并且他的状态将在线标记。这是流程:

UI -> 动作 -> 中间件 -> 减速器

因此,当用户单击登录按钮时,该操作将传递给 reducer。

我有 3 个选项来实现这一点:

  1. 用户单击登录按钮,将调用一个函数,该函数将获取用户的用户 id(使用 store.getState 中的 map),该 id 将传递给 action,然后将其发送到 reducer。

动作(用户 ID)=> 减速器

  1. 用户单击登录按钮,将调用一个函数,然后将用户名传递给该操作。然后 reducer 获取用户 ID 并设置用户 ID 的状态。

动作(用户名)=> 减速器

  1. 使用中间件获取用户 ID 并将其发送到 reducer

action(username) => 中间件 => reducer

我应该如何将登录逻辑应用于我的应用程序。

0 投票
2 回答
681 浏览

javascript - Redux 中间件是如何实现多任务处理的?

由于浏览器中不支持抢占式多任务处理,并且 JavaScript 本质上是单线程的,因此像 redux-saga 这样的 Redux 中间件如何处理不是为协作式多任务处理而设计的无限循环而不触发长时间运行的脚本对话框?

编辑

我的说法“不是为合作多任务而设计的”是错误的。生成器函数的代码仅在第一个yield表达式之前执行。

0 投票
1 回答
8105 浏览

reactjs - “动作可能没有未定义的“类型”属性。您是否拼错了常量?

我正在开发一个 Facebook 应用程序,我正在使用两个不同的模块:AdonisJSreact-redux-starter-kit。然后,我有一个操作来存储在执行回调函数时使用 Facebook 登录按钮登录的用户:

以及整个动作文件:

执行时callback,控制台报错:

未捕获的错误:操作可能没有未定义的“类型”属性。你有没有拼错一个常数?

0 投票
2 回答
2485 浏览

redux - 如何将数据添加到待处理的操作?

我正在使用 Axios、Redux 和 Redux Promise 中间件。

我有以下动作创建者:

在我的减速器中FETCH_USERS_PENDING,我想将请求的 url 保存在我的状态中。我怎样才能做到这一点?

0 投票
1 回答
1832 浏览

redux - 调度动作以响应另一个动作

我正在我的应用程序中设置 redux,并从登录开始。到目前为止,我已经让它运行良好 - 用户使用 Google 登录,成功时我的服务器返回一个访问令牌到放入的网络应用程序redux 存储,然后可以用于将来的 API 调用。

我希望 webapp 立即请求当前用户配置文件以响应存储访问令牌。它需要在存​​储访问令牌之后 - 所以在调用减速器之后。

本质上,为了响应 AUTHENTICATED 操作,我想调度 LOAD_USER 操作 - 它本身是基于承诺的,因此最终触发 LOAD_USER_RESOLVED 操作以将新登录的用户存储到商店中,然后显示他们的UI 中的名称。

我目前正在使用 redux-promise-simple,但是如果需要更改,那没有问题。

0 投票
2 回答
2700 浏览

javascript - redux 中间件 -> 拦截/阻止/转换?

我们正在运行一个 SPA。分派的动作(不是组件)是基于身份验证的。

是否可以拦截和转换分派的动作?

IE

请注意,'FOO' 不应该碰到减速器