gpt4 book ai didi

javascript - 具有多个参数的 Node 纤维/ future 回调

转载 作者:搜寻专家 更新时间:2023-11-01 00:46:19 25 4
gpt4 key购买 nike

futures 如何处理具有多个参数的回调?这对我对 future 的几乎所有用途都至关重要。 github 示例显示它只处理一个参数。

例子来自 Github Readme

var fileNames = readdir('.').wait();

但是像 mysql 这样的调用呢

client.query("select * from employees", function(err, results, fields) {
// callback function returns employees array
callback(results);
});

我如何使用 futures wait() 获得这三个(errresultsfields) > 方法?

编辑

实验告诉我,回调的第一个参数(在本例中为 err)始终被视为错误,如果值为真则抛出该参数。第二个参数被赋值。据我所知,任何进一步的论点都将被忽略。

最佳答案

为 client.query 创建一个包装器,返回一个包含两个结果的 data 参数。

 client.prototype.query2 = function ( sql, callback ) {
this.query(sql,
function(err, results, fields) {
var data={result:result, fields:fields};
callback(err,data);
}
};

我最近创建了比“futures”更简单的抽象,同样基于 Fibers。我还没有用真实世界的数据库示例测试我的代码。请尝试一下,如果可以的话帮我测试一下:https://github.com/luciotato/waitfor

关于javascript - 具有多个参数的 Node 纤维/ future 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13829227/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com