首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Promise不会在redux thunk中得到回报

Promise是JavaScript中一种处理异步操作的机制。它代表了一个异步操作的最终完成或失败,并可以返回一个结果值。在Redux Thunk中,Promise可以用于处理异步操作,例如发起网络请求或执行耗时的计算。

在Redux Thunk中,当我们需要执行一个异步操作时,可以使用Promise来封装这个操作。我们可以创建一个返回Promise的函数,并将其作为参数传递给Redux Thunk中间件的dispatch方法。这样,我们就可以在异步操作完成后,通过Promise的resolve或reject来触发相应的Redux action。

Promise的优势在于它提供了一种更优雅和可读性更高的方式来处理异步操作。它可以避免回调地狱(callback hell)的问题,使代码更加清晰和易于维护。同时,Promise还提供了丰富的方法,如then、catch、finally等,可以方便地处理异步操作的不同状态和结果。

在Redux Thunk中使用Promise的一个常见场景是发起网络请求。我们可以使用fetch或axios等库来发送HTTP请求,并将其封装成一个返回Promise的函数。在这个函数中,我们可以使用resolve来返回请求成功的结果,使用reject来返回请求失败的原因。这样,我们就可以在Redux中通过dispatch来触发相应的action,并在action中处理异步操作的结果。

对于Promise的使用,腾讯云提供了一些相关的产品和服务。例如,腾讯云函数(SCF)可以帮助开发者快速构建和部署无服务器应用,并支持使用Promise来处理异步操作。此外,腾讯云还提供了云数据库MySQL、云数据库MongoDB等数据库产品,可以与Promise结合使用,实现数据的异步读写操作。

更多关于腾讯云相关产品和服务的信息,可以访问腾讯云官方网站:腾讯云

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

React:Redux怎么处理异步?

异步逻辑应放置在 Redux中间件处理 !! Middleware !! (就是下面要提到的redux-thunkredux-promise) ?...dispatch 一个 thunk函数; redux-thunk 中间件允许你 dispatch 一个函数(即:thunk),异步逻辑就放在这个函数处理; 感受一波redux-thunk的精炼 ?...总结: redux-thunk 允许我们 dispatch 一个包含异步处理逻辑函数(thunk);优点是我们可以借助这种简单的机制在 redux 处理异步逻辑;缺点是这会让 action 变的不纯粹...((dispatch, getState) => { ... }) 注:redux-thunk 允许我们 dispatch 一个 thunk函数; redux-promise: store.dispatch...redux-promise应用示例 ? 总结: redux-promise 虽然比 redux-thunk 封装的更深,但仍然存在几个问题: a.

2.6K30

从应用到源码-深入浅出Redux

上边我们按照步骤实现了一个简单的 Redux-Thunk 中间件,它支持我们传入的 action 类型为一个函数。此时我们就可以在 Redux 完美的使用异步 Action 。...,换言之在真正派发 dispatch 时中间件的执行顺序应该是相反的,也就是从左往右先执行 logger、thunk最后为promise 最后再到真实 store 的 disaptch。...中间件 promise中间件 dispatch 复制代码 最后我们再来一起看看 Redux compose 的源码: 其实在你搞清楚上述我们实现的 compose 后在看看源码的 compose...(promise(dispatch)) // 当调用 next(action) 时,相当于调用 thunk(promise(disaptch))(action) // 依次继续执行 thunk middleware...的逻辑,同时执行到 thunk 的 next 时,传递了 action 相当于调用 promise(disaptch)(action) // 继续进入 promise 中进行执行,由于 promise

1.3K10

redux-thunk 中间件的示例

redux-thunk 简介 Redux处理异步任务——异步数据流中间件:redux-thunk & action是一个函数,函数内部处理异步任务 注意:默认情况下,redux自身只会处理同步数据流。...但是,如果涉及到异步操作,就应该使用 redux-thunk 这种的中间件,来处理异步数据流!!!...使用了redux-thunk中间件以后,我们需要修改action redux-thunk的使用 安装 ,引入 npm install redux-thunk // 下载两个中间件, redux-thunk...的区别,注意是dispatch的action是一个函数 import {connect} from 'react-redux' import {userLoginAction} from "./.....(dispatch)=>{ // 在此处,就可以处理异步操作了 // 也就是,异步代码就可以放在此处执行了 return new Promise((resolve

53520

Redux异步解决方案之Redux-Thunk原理及源码解析

前段时间,我们写了一篇Redux源码分析的文章,也分析了跟React连接的库React-Redux的源码实现。但是在Redux的生态还有一个很重要的部分没有涉及到,那就是Redux的异步解决方案。...你可能会发现很多例子都返回了Promise,这个不是必须的,但是用起来却很方便。Redux并不关心你的thunk返回了什么值,但是他会将这个值通过外层的dispatch()返回给你。...这就是为什么你可以在thunk返回一个Promise并且等他完成: dispatch(someThunkReturningPromise()).then(...)...这是因为thunk提供的dispatch也可以接收thunk,所以你可以一直嵌套的dispatch thunk。而且结合Promise的话可以更好的控制异步流程。...Redux中间件范式 在我前面那篇讲Redux源码的文章讲过中间件的范式以及Redux这块源码是怎么实现的,没看过或者忘了的朋友可以再去看看。

3.4K51

单向数据流-从共享状态管理:fluxreduxvuex漫谈异步数据处理

也就是说,任何被发送到 store 的 action 现在都会经过thunkpromise,logger 这几个中间件了。...比如 redux-thunkredux-promise,分别是使用异步回调和 Promise 来解决异步 action 问题的。...缺点就是用户要写的代码有点多,可以看到上面的代码比较啰嗦 而promise只是在action的payload作为一个promise,中间件内部进行处理之后,发出新的action。...**redux-thunkredux-promise 刚好就是代表这两个面。 当业务逻辑多且复杂的时候会发生什么情况呢?...redux-saga的优势 Redux 处理异步的中间件 redux-thunkredux-promise,当然 redux 的异步中间件还有很多,他们可以处理大部分场景,这些中间件的思想基本上都是把异步请求部分放在了

3.6K40

一文梭穿Vuex、Flux、ReduxRedux-saga、Dva、MobX

显然,用 Redux 处理异步,可以自己写中间件来处理,当然大多数人会选择一些现成的支持异步处理的中间件。比如 redux-thunkredux-promise 。...Redux-promise redus-promiseredux-thunk 的思想类似,只不过做了一些简化,成功失败手动 dispatch 被封装成自动了: const FETCH_DATA =...redux-thunkredux-promise 刚好就是代表这两个面。 redux-thunkredux-promise 的具体使用就不介绍了,这里只聊一下大概的思路。...大部分简单的异步业务场景,redux-thunk 或者 redux-promise 都可以满足了。 上面说的 Flux 和 Redux,和具体的前端框架没有什么关系,只是思想和约定层面。...刚才介绍了两个Redux 处理异步的中间件 redux-thunkredux-promise,当然 redux 的异步中间件还有很多,他们可以处理大部分场景,这些中间件的思想基本上都是把异步请求部分放在了

5.4K10

redux-saga_pub culture

在最初的调研redux-thunk是首先考虑的,redux-thunk是在action作用到reducer之前触发一些业务操作。刚好起到控制层的作用。...拿到后端返回状态 (promise so easy…) 隐藏提示信息 (这个有点难度,不过难不倒我,我给组建加一个控制属性) 更新redux store (dispatch咯。。。)...call方法 call有些类似Javascript的call函数, 不同的是它可以接受一个返回promise的函数,使用生成器的方式来把异步变同步。...put方法 put就是redux的dispatch,用来触发reducer更新store 有什么弊端 目前在项目实践遇到的一些问题: redux-saga模型的理解和学习需要投入很多精力 因为需要用...在重用方面,解耦显示层和业务层之后, 代码的重用度也得到了提升。 选择Saga的原因 开始的时候一直在犹豫是否需要使用Saga或thunk,因为并不能很好的把握这两者到底解决了什么问题。

1.4K10

状态管理的概念,都是纸老虎

显然,用 Redux 处理异步,可以自己写中间件来处理,当然大多数人会选择一些现成的支持异步处理的中间件。比如 redux-thunkredux-promise 。...Redux-promise redus-promiseredux-thunk 的思想类似,只不过做了一些简化,成功失败手动 dispatch 被封装成自动了: const FETCH_DATA =...redux-thunkredux-promise 刚好就是代表这两个面。 redux-thunkredux-promise 的具体使用就不介绍了,这里只聊一下大概的思路。...大部分简单的异步业务场景,redux-thunk 或者 redux-promise 都可以满足了。 上面说的 Flux 和 Redux,和具体的前端框架没有什么关系,只是思想和约定层面。...刚才介绍了两个Redux 处理异步的中间件 redux-thunkredux-promise,当然 redux 的异步中间件还有很多,他们可以处理大部分场景,这些中间件的思想基本上都是把异步请求部分放在了

5.2K20
领券