项目开发中探究dva model的effect及其类型

本文探讨了在dva model中effect的使用,特别是take、takeEvery、takeLatest的区别和cancel的实践应用。takeEvery和takeLatest作为take的类型,分别用于处理有依赖关系的请求和防止重复请求。cancel则用于在特定条件下终止任务,例如在用户切换路由时取消尚未完成的请求。项目开发中,理解这些effect的不同类型对于优化请求管理和提升用户体验至关重要。
摘要由CSDN通过智能技术生成

一、项目运行环境

         ant中的pro4

二、学习前的一些困惑

   以下想法是在学习前的疑问,答案也是在囫囵吞枣看一下博客后的想法,当然大部分是错的。

1、take、takeEvery、takeLatest有什么不同?

       take、takeEvery、takeLatest是take的三种方式,具体有什么不同,未知

2、cancel怎么使用?

        cancel照着字面意思理解,应该是取消请求吧,但在项目代码中试了很多次(使用方法同take或者同put)均失败报错

3、takeEvery、takeLatest在项目代码中如何使用?

       心动不如手动,跟着一些文章敲代码,用在项目里,结果却发现,怎么写都不对

小结:

    事实上,take和call、put、select归属为一类,标model中的effect,而'takeEvery' | 'takeLatest' | 'watcher' | 'throttle'指的是effect的类型,take对应effect默认的类型是'takeEvery',也就是说,take和'takeEvery' 、'takeLatest'根本不是同一个“东西”,'takeEvery' 、'takeLatest'是take的类型

三、dva model中的effect

 常用的redux-saga 的 effects: 

              call、put、select

  • call:表示调用异步函数  
 const result= yield call(getList, params);
  • put:表示dispatch action
   yield put
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值