Node.Js中的异步问题-如何执行一系列动作

Async problems in Node.Js - how to perform a sequence of actions?

本文关键字:执行 一系列 何执行 Js 异步 问题 Node      更新时间:2023-09-26

我需要对一个变量执行一系列操作,其中前一个操作的输出将是下一个操作的输入。

而且,在每一步中,如果输入格式不正确,整个过程可能会终止。

我知道这可以用回调函数完成,但是我有这么多步骤,它变成了一个烂摊子。

有谁知道一个好的解决方案,我可以使用来避免这种情况?只是一个模块,帮助按顺序执行操作?或者其他技巧?

谢谢!

听起来像async。瀑布可能就是你要找的。

就早期中止而言,async没有一个简单的方法来做到这一点,但我通常做的是用"假"错误实例调用回调,然后在最后的回调中,我检查"假"错误与真实错误(通常我附加一些属性,如'err ')。

如果你使用Async.js。你可以使用async。while或async.until

var count = 0;
async.whilst(
    function () { return count < 5; },
    function (callback) {
        count++;
        setTimeout(callback, 1000);
    },
    function (err) {
        // 5 seconds have passed
    }
);

第一个函数用于条件检查。第二个功能实际上是逻辑,您可以保存结果并将其作为新的输入重用。