蓝鸟:获取被宣传的原始功能的参考

时间:2015-08-30 00:25:07

标签: promise bluebird

在使用bluebird对特定函数执行promisify之后,是否可以获得对已宣告的原始函数的引用?

为什么:我使用一个帮助器从函数中获取参数名称,并在它返回(_arg0, _arg1, _arg2)的promisified函数上,我希望可以从某个地方获取原始函数签名。

1 个答案:

答案 0 :(得分:1)

不,你可以解决它。

如果使用promisifyAll进行宣传,您可以在没有Async后缀的情况下访问它 - 否则,您必须自己执行此操作:

var promisified = Promise.promisify(cbFunction);
promisified.original = cbFunction;

// access as promisified.cbFunction from that point on.

否则,通过闭包捕获原始函数,您无法可靠地访问它。老实说,你可能不应该这样,因为无论如何都要干涉缩小。