-1
私は、コールバックエラーと応答の形式で特定のサービス関数を用意しているため、正常に宣言できます。Bluebird promisifyAll個別のpromisifying関数の代わりに
例:コントローラから service.js
functionA(callback) {
...
callback(error, response);
}
functionB(callback) {
...
callback(error, response);
}
module.exports.functionA = functionA;
module.exports.functionB = functionB;
は、Iが正常
const functionA = Promise.promisify(service.functionA);
const functionB = Promise.promisify(service.functionB);
を用いpromisifiedが、コードを最適化するために、私が使用される:
const {functionA, functionB} = Promise.promisifyAll(service);
あります動作していません...エラー "コールバックは関数ではありません"。 Bluebird promisifyを使用することはできませんか?
const {functionAAsync, functionBAsync} = Promise.promisifyAll(service);
の作業罰金:Bluebird doc 1として
'promisifyAll'は接尾辞付きメソッド名を持つ新しいメソッドを作成します。あなたの破壊は、元の方法を取得します。 – Bergi
申し訳ありません@Bergi、私はあなたを手に入れます。それらの機能を私のようにマッピングすることはできませんか? – Nisha
いいえ、可能性はありません。 'const {functionAAsync、functionBAsync} = ...'を実行する必要があり、コンテキストが失われても動作しません。 – Bergi