敏捷流量控制工具中的回调和下划线
the callback and underscore in nimble flow-control tool
我很难理解敏捷,这里有两个问题:
1--我在下面有一个很小的测试代码,几乎是从敏捷的在线教程直接复制的。我在那里没有使用任何复杂的asyn函数,只是出于简单的原因使用了console.log。
var nimble = require('nimble');
nimble.series([
function(cb) {
console.log("first");
cb();
},
function(cb) {
console.log("second");
cb();
}
]);
它按承诺工作,但回调(cb)有什么意义?从代码来看,我似乎从未将任何内容作为cb传递给该系列中的任何一个函数。
然后我尝试了代码的修改版本。基本上,它会删除所有回调。
var nimble = require('nimble');
nimble.series([
function() {
console.log("first");
},
function() {
console.log("second");
}
]);
遗憾的是,它只输出"第一个",而没有输出"第二个",所以它在某个地方是错误的,不确定为什么。现在我很困惑这个回调到底是什么,以及为什么我们必须要它
2--根据敏捷的教程,似乎可以方便地使用下划线(_)。我尝试了下面的代码,它是直接在网上复制的,但我只是被告知_没有定义。。
var nimble = require('nimble');
_.series([
function (callback) {
setTimeout(function () {
console.log('one');
callback();
}, 25);
},
function (callback) {
setTimeout(function () {
console.log('two');
callback();
}, 0);
}
]);
可能是我做错了什么。在敏捷中使用_之前,我应该导入undercore.js吗?但敏捷表示,其卖点之一是体积小,不需要导入async和下划线。然后我又困惑了。。
问题1:
series()需要在每个函数中调用cb()来告诉它转到下一个函数。这就是为什么你的第二个函数在从中取出第一个函数的cb()后没有被执行的原因
问题2:
是的,下划线在使用前需要导入,就像使用灵活的一样
var=require('underscore');
相关文章:
- 如何在没有回调的情况下获取有关元素的信息
- 在没有大量回调函数的情况下在列表元素上循环播放同一动画
- 与 promise 一起使用时,异步瀑布不执行下一个回调方法
- 如何运行一个调用某个函数的函数首先完成它,然后再调用下一个函数.正在创建回调函数
- 如何在没有空回调的情况下测试多个调用
- ReactJs:this.setState的情况下不调用回调函数
- 如何在Angular中设置异步HTTP服务的回调,以便在不定义数组的情况下在控制器中填充数组
- 下划线's每次检查回调的{}返回
- 如何在不向现有JavaScript函数添加代码的情况下向该函数添加回调函数
- 返回按钮回调函数在特定情况下失败或未启动
- 挖空下拉选项呈现回调
- 将回调函数添加到下划线 _.invoke
- 如何在文档就绪函数下使用回调函数
- 在这种情况下,如何使用参数添加回调
- Node.js:_.chain 下划线中的异步回调
- 未定义的返回值.在这种情况下如何使用回调
- JavaScript:回调,不会停止执行下面的行
- 使用带有下划线循环的回调函数.js骨干.js项目不起作用
- 敏捷流量控制工具中的回调和下划线
- JQuery-回调下拉列表加载