thunk的主要用法
主要用法目前用的多的就三种;
thunk.all 并发
thunk.sql 同步
thunk.race 最先返回的进入结果输出
前两个返回的结果都是数组,最后一个返回的是对象;
thunk的链式调用没有搞懂,不过自己通过转配得到了一种方法
运用情景就是连续查询n多个结果,
第一次查询的结果,第二次会用到,第二次得到的结果,第三次会用到,这样的场景需要这样写;
thunk(function(cb){
setTimeout(function(){
cb(null,1000)
},1000)
})(function(err,result){
return thunk(function(cb){
setTimeout(function(){
alert(11)
cb(null,result+2000)
},result)
})
})(function(err,result){
return thunk(function(cb){
setTimeout(function(){
alert(11)
cb(null,result+2000)
},result)
})
})(function(err,result){
return thunk(function(cb){
setTimeout(function(){
alert(11)
cb(null,result+2000)
},result)
})
})(function(err,result){
return thunk(function(cb){
setTimeout(function(){
alert(11)
cb(null,result+2000)
},result)
})
})(function(err,result){
console.log(result);
})
慢慢体会,
不懂之处就是thunk的原生的链式调用在哪里有;怎么写;
thunk的主要用法的更多相关文章
- 转: ES6异步编程:Thunk函数的含义与用法
转: ES6异步编程:Thunk函数的含义与用法 参数的求值策略 Thunk函数早在上个世纪60年代就诞生了. 那时,编程语言刚刚起步,计算机学家还在研究,编译器怎么写比较好.一个争论的焦点是&quo ...
- react+redux教程(一)connect、applyMiddleware、thunk、webpackHotMiddleware
今天,我们通过解读官方示例代码(counter)的方式来学习react+redux. 例子 这个例子是官方的例子,计数器程序.前两个按钮是加减,第三个是如果当前数字是奇数则加一,第四个按钮是异步加一( ...
- 转: ES6异步编程: co函数库的含义与用法
转: ES6异步编程: co函数库的含义与用法 co 函数库是著名程序员 TJ Holowaychuk 于2013年6月发布的一个小工具,用于 Generator 函数的自动执行. 比如,有一个 Ge ...
- react-redux的基本用法
注意:读懂本文需要具备redux基础知识, 注明:本文旨在说明如何在实际项目中快速使用react-redux,限于篇幅,本文对具体的原理并未做分析,请参考redux官网 我一直以为我写了一篇关于rea ...
- ES6.0 Generator 三种用法
// Generator start ------- thunk 用法 const Thunk = function(fn) { return function (...args) { return ...
- async 函数的含义和用法
Generator函数的含义与用法 Thunk函数的含义与用法 co函数库的含义与用法 async函数的含义与用法 一.终极解决 异步操作是 JavaScript 编程的麻烦事,麻烦到一直有人提出各种 ...
- EditText 基本用法
title: EditText 基本用法 tags: EditText,编辑框,输入框 --- EditText介绍: EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,可以说它是 ...
- jquery插件的用法之cookie 插件
一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...
- Java中的Socket的用法
Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...
随机推荐
- 关于Android新建出错:Errors occurred during the build. Errors running builder 'Android Resource M
新建一个eclipse的工作空间就可以了. fuck~
- 12行代码 让浏览器崩溃,iPhone重启
<html> <body> <script> var total=""; for (var i=0;i<1000000;i++) { ...
- C语言字符和字符串随记
==========================第11章 字符和字符串函数==========================震惊:字符串常量属于静态存储类,常量引号中的内容作为指向该字符串存储位 ...
- make file 详
一: linux的touch命令不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件. 1.命令格式: touch [选项]... 文件... 2.命令参数: -a ...
- 触发按钮改变panel面板上的小圆圈颜色
import javax.swing.*; import java.awt.event.*; import java.awt.*; public class TouChaCol implements ...
- VS2015 开发人员命令提示,如何实现记事本编程
开始,选择VS2015 开发人员命令提示,打开 找到.c文件的位置,复制位置 在VS2015 开发人员命令提示, 输入cd 位置 回车 然后输入cl 文件名 回车 这样进行编译
- jquery去除字符串首尾空格的方法:$.trim()
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- hdu 4597 Play Game(区间dp,记忆化搜索)
Problem Description Alice and Bob are playing a game. There are two piles of cards. There are N card ...
- iOS开发之GCD使用总结
GCD是iOS的一种底层多线程机制,今天总结一下GCD的常用API和概念,希望对大家的学习起到帮助作用. GCD队列的概念 在多线程开发当中,程序员只要将想做的事情定义好,并追加到DispatchQu ...
- ASP.NET MVC 中将FormCollection与实体间转换方法【转】
将Action动作中传递的FormCollection转变成对应的实体,可以使用Controller的TryUpdateModel()方法. 示例如下: [HttpPost] public Actio ...