一、在dispatch中使用callback

在dva@2中实现回调可以将回调函数作为参数dispatch:

dispatch({

type: 'model/fetch',

payload: {

resolve,

id: userId,

},

callback: res => {

console.log(res);

}

})

然后在model的effects中这样写:

*fetch({ payload, callback }, {call}) {

const response = yield call(services.fetch, payload);

if (response.code === 0) {

yield put({

type: 'reload',

payload: response,

});

if (callback) callback(response);

}

二、在dispatch中使用then

如果在dva@1中要实现回掉可以用Promise实现:

new Promise((resolve) => {

dispatch({

type: 'model/fetch',

payload: {

resolve,

id: userId,

}

})

}).then((res) => {

console.log(res);

})

然后在model的effects中这样写:

...

*fetch({ payload }, { call }) {

const { resolve } = payload;

const { data } = yield call(services.fetch, payload);

if (data.code === 0) {

// 通过resolve返回数据,返回的数据将在Promise的then函数中获取到

!!resolve && resolve(data.data);

}

dispatch js实现_dva.js(and design)实现dispatch的回调函数相关推荐

  1. 原生js判断css动画结束 css 动画结束的回调函数

    原文:原生js判断css动画结束 css 动画结束的回调函数 css3 的时代,css3--动画 一切皆有可能: 传统的js 可以通过回调函数判断动画是否结束:即使是采用CSS技术生成动画效果,Jav ...

  2. html动态加载js方法,原生JS实现动态加载js文件并在加载成功后执行回调函数的方法...

    本文实例讲述了原生JS实现动态加载js文件并在加载成功后执行回调函数的方法.分享给大家供大家参考,具体如下: 有的时候需要动态加载一个javascript文件,并且在加载成功后执行回调函数(例如文件中 ...

  3. dispatch callback ant design pro 网络请求回调函数

    index.jsx 代码解析:在组件初次渲染时调用 model 中 命名空间为  a_models  的 getData 网络请求,传了一个patload 参数和 callback 回调函数过去,然后 ...

  4. dva的用法_dva.js 用法详解:列表展示

    这次主要通过在线获取用户数据并且渲染成列表这个案例来演示dva.js. 整个开发流程概括下来应该是: 编写用户列表model(数据模型)->  编写修改model的方法 -> 编写服务接口 ...

  5. dva的用法_dva.js初探

    dva是一个在redux和redux-saga的基础上封装的一个轻型框架,能辅助更好的组织代码进行开发.同时提供了react-router和fetch,基本上具备了开发web前端应用所需的主要工具,省 ...

  6. 低版本浏览器支持css3 Media查询的方法, ie6-ie8 不支持css3 的时候用respond.js,html5shiv.js 【非常实用哦】。。。。。。。。。。。。...

    Respond.js 是一个快速.轻量的 polyfill,用于为 IE6-8 以及其它不支持 CSS3 Media Queries 的浏览器提供媒体查询的 min-width 和 max-width ...

  7. MVC、MVP、MVVM、Angular.js、Knockout.js、Backbone.js、React.js、Ember.js、Avalon.js、Vue.js 概念摘录...

    注:文章内容都是摘录性文字,自己阅读的一些笔记,方便日后查看. MVC MVC(Model-View-Controller),M 是指业务模型,V 是指用户界面,C 则是控制器,使用 MVC 的目的是 ...

  8. html鼠标平滑滚动效果,JS特效代码 JS动态平滑滚动菜单效果

    JS特效代码 JS动态平滑滚动菜单效果 www.css5.net body {cursor:crosshair; background:#111; margin:0; padding:0; posit ...

  9. 【Vue.js】Vue.js中常用的UI组件库和Vue Router

    1.Vue生态中常用的UI组件库 1. vant 介绍 轻量级.可靠的移动端 Vue 组件库 有赞前端团队出品 GitHub地址:https://github.com/youzan/vant 特性 拥 ...

  10. 用node.js和express.js和jade搭建轻型cms系统

    http://cnodejs.org/topic/4f16442ccae1f4aa270010bf 前言: 我们主要做的是iphone/ipad程序,但关注node.js很久,因为我们多少总是要做网站 ...

最新文章

  1. CUDA: GPU高性能运算
  2. 在git项目误上传了本地idea配置文件,如何解决?
  3. python numpy官网_python+numpy+scipy=matlab,抛弃matlab
  4. 自学编程的 6 个技巧总结
  5. 撒花!吴恩达新书《Machine Learning Yearning》完整中文版pdf开放下载
  6. 看过这么多爆文,依旧走不好异步编程这条路?​
  7. Streamr助你掌控自己的数据
  8. flex学习网站大全(转)
  9. oracle10g 如何打开,oracle10g  oem无法打开解决方法
  10. Git -- 分支管理简介
  11. awt中监听输入框textField
  12. python 减法函数_python之函数
  13. 立根铸魂,麒麟信安携手欧拉共推操作系统产业新发展
  14. Tkinter模块GUI图形化编程实战(八)——中国象棋(含超详解及完整源码、完整程序免费下载链接)
  15. 蓝牙SBC开发笔记(一)
  16. MySQL---规范数据库设计
  17. 移动软件开发-制作视频播放器
  18. 防火墙阻止应用程序linux,win10系统下如何解除被防火墙阻止运行的应用程序
  19. IntelliJ IDEA的安装及插件下载
  20. 时间序列分析的基本思路与步骤(入门级,新手必看!!!)

热门文章

  1. 20190803——python文件操作
  2. java pointer_Java EE 8 JSON Pointer讲解
  3. c2c开店流程图_c2c的主要业务流程图以及路线?
  4. android应用商店完整版源码
  5. 绝地求生缺少xinput1_3.dll怎么办?
  6. HTB[Tier 0]Appointment题解
  7. 白帽专访丨大家好,我是阿杨,一个全职挖洞选手。
  8. nfc卡模式与标准模式_手机NFC卡模式功能是什么意思
  9. VBE2019的下载、安装和使用(最新版2019.5.30)
  10. 宁波实训day1: java web开发常用工具安装