我很难理解灵活,这里有两个问题:
1 -- 我在下面有一个很小的测试代码,几乎是直接从 nimble 的在线教程中复制而来的。我没有在其中使用任何复杂的异步函数,只是出于简单的原因使用了一个 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 -- 从 nimble 的教程中,似乎可以方便地使用下划线 (_)。试了下面的代码,网上直接复制的,只是被告知_没有定义..
var nimble = require('nimble');
_.series([
function (callback) {
setTimeout(function () {
console.log('one');
callback();
}, 25);
},
function (callback) {
setTimeout(function () {
console.log('two');
callback();
}, 0);
}
]);
大概是我搞错了。我应该先导入 underscore.js,然后才能灵活地使用 _ 吗?但nimble表示它的一个卖点是它很小,不需要导入异步和下划线。然后在这里我又糊涂了。。