promisifyAll函数中的回调没有堆栈跟踪
no stack trace on callback in promisifyAll function
我正在使用以下代码将该对象转换为
Extraction = {
phaseone : require('./phaseone')
phasetwo : require('./phasetwo')
phasethree : require('./phasethree')
};
承诺:
Promise.promisifyAll(Extraction);
在第一阶段,我正在做我所有的逻辑(我不能在这里显示:/),最后,当我完成所有操作时,我调用回调:
var phaseone: function(file, callback) {
// logic
callback(result);
};
这应该称为第二阶段,因为我这样称呼:
Extraction.phaseoneAsync(file).then(Extraction.phasetwoAsync);
但这一切正在回归:
未处理的拒绝(<[{"exists":true,"path":"_input/Estapar…>,无堆栈跟踪)
这可能是什么??
如果您想使用promisify
,那么将错误作为第一个参数传递给回调,这就是promisify
所期望的:
var phaseone: function(file, callback) {
// logic
callback(null, result);
};
但如果你打算一直使用BlueBird,你也可以直接让你的API承诺为基础,这样你就不必承诺了:
var phaseone: function(file) {
return new Promise(function(resolve, reject) {
// logic
resolve(result);
})
};
相关文章:
- Fresh Spark Install+Homestead上的Vue异步堆栈跟踪错误
- 打印javascript控制台的堆栈跟踪
- 如何在Chrome扩展内容脚本中获取错误堆栈跟踪
- 正在获取控制台消息的堆栈跟踪
- Bluebird 在与 Sequelize/MySQL 一起使用时显示损坏的堆栈跟踪
- 如何在Internet Explorer中获取javascript堆栈跟踪.e.stack 返回 “Undefined”
- JavaScript 中的 try-catch:如何获取原始错误的堆栈跟踪或行号
- 节点错误堆栈跟踪未定义
- 如何在 node.js 中输出深度堆栈跟踪
- 如何在 Firefox 中获取 JavaScript 堆栈跟踪
- 蓝鸟(或其他承诺库)保持承诺错误堆栈跟踪
- 在 Karma (AngularJS) 中抑制堆栈跟踪
- Firebug:角度堆栈跟踪不显示错误的来源(行号,文件)
- 在node.js中获取*current*堆栈跟踪(例如,通过SIGINT)
- 在开发Firefox扩展时获取堆栈跟踪
- 正在清理Protractor堆栈跟踪
- 从nodejs中抛出的字符串中获取堆栈跟踪
- 有没有一种方法可以从Internet Explorer中的Error对象中获取行号或堆栈跟踪
- 何时在窗口上提供正确的堆栈跟踪.错误函数
- 如何将js堆栈跟踪替换为include"行“;以及“;位置“;文本