dispatch js实现_dva.js(and design)实现dispatch的回调函数
一、在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的回调函数相关推荐
- 原生js判断css动画结束 css 动画结束的回调函数
原文:原生js判断css动画结束 css 动画结束的回调函数 css3 的时代,css3--动画 一切皆有可能: 传统的js 可以通过回调函数判断动画是否结束:即使是采用CSS技术生成动画效果,Jav ...
- html动态加载js方法,原生JS实现动态加载js文件并在加载成功后执行回调函数的方法...
本文实例讲述了原生JS实现动态加载js文件并在加载成功后执行回调函数的方法.分享给大家供大家参考,具体如下: 有的时候需要动态加载一个javascript文件,并且在加载成功后执行回调函数(例如文件中 ...
- dispatch callback ant design pro 网络请求回调函数
index.jsx 代码解析:在组件初次渲染时调用 model 中 命名空间为 a_models 的 getData 网络请求,传了一个patload 参数和 callback 回调函数过去,然后 ...
- dva的用法_dva.js 用法详解:列表展示
这次主要通过在线获取用户数据并且渲染成列表这个案例来演示dva.js. 整个开发流程概括下来应该是: 编写用户列表model(数据模型)-> 编写修改model的方法 -> 编写服务接口 ...
- dva的用法_dva.js初探
dva是一个在redux和redux-saga的基础上封装的一个轻型框架,能辅助更好的组织代码进行开发.同时提供了react-router和fetch,基本上具备了开发web前端应用所需的主要工具,省 ...
- 低版本浏览器支持css3 Media查询的方法, ie6-ie8 不支持css3 的时候用respond.js,html5shiv.js 【非常实用哦】。。。。。。。。。。。。...
Respond.js 是一个快速.轻量的 polyfill,用于为 IE6-8 以及其它不支持 CSS3 Media Queries 的浏览器提供媒体查询的 min-width 和 max-width ...
- 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 的目的是 ...
- html鼠标平滑滚动效果,JS特效代码 JS动态平滑滚动菜单效果
JS特效代码 JS动态平滑滚动菜单效果 www.css5.net body {cursor:crosshair; background:#111; margin:0; padding:0; posit ...
- 【Vue.js】Vue.js中常用的UI组件库和Vue Router
1.Vue生态中常用的UI组件库 1. vant 介绍 轻量级.可靠的移动端 Vue 组件库 有赞前端团队出品 GitHub地址:https://github.com/youzan/vant 特性 拥 ...
- 用node.js和express.js和jade搭建轻型cms系统
http://cnodejs.org/topic/4f16442ccae1f4aa270010bf 前言: 我们主要做的是iphone/ipad程序,但关注node.js很久,因为我们多少总是要做网站 ...
最新文章
- CUDA: GPU高性能运算
- 在git项目误上传了本地idea配置文件,如何解决?
- python numpy官网_python+numpy+scipy=matlab,抛弃matlab
- 自学编程的 6 个技巧总结
- 撒花!吴恩达新书《Machine Learning Yearning》完整中文版pdf开放下载
- 看过这么多爆文,依旧走不好异步编程这条路?​
- Streamr助你掌控自己的数据
- flex学习网站大全(转)
- oracle10g 如何打开,oracle10g oem无法打开解决方法
- Git -- 分支管理简介
- awt中监听输入框textField
- python 减法函数_python之函数
- 立根铸魂,麒麟信安携手欧拉共推操作系统产业新发展
- Tkinter模块GUI图形化编程实战(八)——中国象棋(含超详解及完整源码、完整程序免费下载链接)
- 蓝牙SBC开发笔记(一)
- MySQL---规范数据库设计
- 移动软件开发-制作视频播放器
- 防火墙阻止应用程序linux,win10系统下如何解除被防火墙阻止运行的应用程序
- IntelliJ IDEA的安装及插件下载
- 时间序列分析的基本思路与步骤(入门级,新手必看!!!)
热门文章
- 20190803——python文件操作
- java pointer_Java EE 8 JSON Pointer讲解
- c2c开店流程图_c2c的主要业务流程图以及路线?
- android应用商店完整版源码
- 绝地求生缺少xinput1_3.dll怎么办?
- HTB[Tier 0]Appointment题解
- 白帽专访丨大家好,我是阿杨,一个全职挖洞选手。
- nfc卡模式与标准模式_手机NFC卡模式功能是什么意思
- VBE2019的下载、安装和使用(最新版2019.5.30)
- 宁波实训day1: java web开发常用工具安装