ブルーバードの約束の中でエラーをスローすることに問題があります。次のコードを使用します。
var Promise = require('bluebird');
var domain = require('domain');
var problem = function() {
return new Promise(function(resolve, reject){
reject(new Error('Oops!'));
});
};
domain.create()
.on('error', function(e){
console.log("Caught Error " + e.message)
process.exit(1);
})
.run(function() {
problem().done();
});
Caught Error Oops!
コンソールに表示されることを期待しています。ただし、エラーはドメイン内でキャッチされていないようで、コンソールに致命的なエラーとスタック トレースが表示されます。
誰かが理由を知っていますか?