redux常见中间件简要分析

       说起redux中间件,大家可能都挺熟悉的。github上有各种各样的中间件。以下我会对最近学习的中间件进行分析

         首先是logger这个中间件的作用就是能打印出先前的state 改变后的state和action给开发带来一些便利。但是这个功能完全可以被redux-devtools-extension取代。

         然后是thunk这个应用的还是比较多的,它的引入是为了解决action里面无法进行异步操作的问题。它可以使action返回的是函数。

         接下来的是promise.middleware 这个的引入是解决action里面异步写法过于复杂的问题,注意在调用的时候是要在中间件里面执行的。它会自动创建aciton的成功与失败的action。

        最后要说的是redux-saga它本身是基于es6的generator来实现的,它的实现需要一个监视saga我们可以用takeEvery或者takeLatest。takeEvery是注册监视action不用等着异步完成就可以更新视图同步性比较高。然后takeLatest是防止重复提交用的。然后就是call和fork了call是阻塞的,fork是非阻塞的。

          面试的话常常问到 thunk 和 saga的区别,他们都能实现异步,不同点在于thunk是强耦合的。必须要写在action里面这样的话不便于维护,所以现在更多的是用saga。

           

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值