fields
は次のコードでは定義されていませんが、エラーが発生したときにはコンソールには記録されません。この具体的な例では、なぜ、そしてこれを処理する実際の方法は何ですか?JavaScriptエラーがコンソールに表示されませんか?
"Testing"
がコンソールに記録されます(行番号2)が、未定義の変数fields
(行番号4)は報告されていません。エラーはAPI応答(行番号5)に返されますが、行番号、スタックトレースなどの関連情報はありません。
このログのようなエラーをコンソールに表示するにはどうすればよいですか?
export function post(req, res) {
console.log("Testing")
User.create(getFields(req, ["name_first", "name_last"]))
.then(user => respondJSON (res, fields, { status: 201 }))
.catch(err => respondError (res, err))
}
キャッチがエラーで応答しているので、私は次のAPIレスポンスを得る:
{
"error": true,
"data": {
"message": "fields is not defined"
}
}
私は、NPMのスクリプトを通じて私のコードを実行するために、バベル6とバベル・ノードを使用しています。私はMorganのロギングも使用しています。ロギングのためにミドルウェアを削除しても、エラー出力は変更されません。
は、コンソールに伝播しない約束で起こるエラーをしますか?たとえば、コンソールに 'console.log(x)'と入力すれば、 'Uncaught ReferenceError:x is not defined 'とスタックトレースが表示されます。 – Connorelsea
[なぜ私はPromise.catchハンドラの内部にスローできませんか?](http://stackoverflow.com/questions/30715367/why-can-i-not-throw-inside-a-promise-catch-handler ) – jib