gpt4 book ai didi

javascript - 如何将参数传递给 Node A 库的 (nodeify) promise 处理程序

转载 作者:搜寻专家 更新时间:2023-10-31 23:38:23 25 4
gpt4 key购买 nike

在下面的代码中,我希望在调用 processhttprequest() 时将变量 a、b、c 作为参数传递。

    var q = require("q");
var request = require('request');

function myfun()
{
var a, b, c;
//do some work here
var httprequest = q.denodeify(request);
var httprequestpromise = httprequest(httpoptions);
httprequestpromise.then(processhttprequest);
}

我尝试了 httprequestpromise.then(processhttprequest.bind([a, b, c])); 但没有成功。 Q 或任何其他 promise 库是否支持此功能。

最佳答案

您可以使用 .bind()像这样:

httprequestpromise.then(processhttprequest.bind(null, a, b, c));

这将创建一个虚拟函数,它将添加参数 a , b , 和 c打电话前 processhttprequest() .


或者,您可以像这样使用自己的 stub 函数手动执行此操作:

function myfun()
{
var a, b, c;
//do some work here
var httprequest = q.denodeify(request);
var httprequestpromise = httprequest(httpoptions);
httprequestpromise.then(function(result) {
return processhttprequest(a, b, c, result);
});
}

关于javascript - 如何将参数传递给 Node A 库的 (nodeify) promise 处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28798101/

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