promiseコールバックが呼び出されると、 「Uncaught (in promise)」reject()
という警告メッセージが Chrome コンソールに表示されます。その背後にある理由や、それを取り除く方法に頭を悩ませることはできません。
var p = new Promise((resolve, reject) => {
setTimeout(() => {
var isItFulfilled = false
isItFulfilled ? resolve('!Resolved') : reject('!Rejected')
}, 1000)
})
p.then(result => console.log(result))
p.catch(error => console.log(error))
警告:
編集:
onRejected
ハンドラーがメソッドに明示的に提供されていない場合.then(onResolved, onRejected)
、JS は自動的に暗黙的なハンドラーを提供することがわかりました。次のようになります(err) => throw err
。自動生成されたハンドラーが順番にスローします。
参照:
IsCallable( onRejected )` がfalseの場合、
onRejectedを「Thrower」にします。
http://www.ecma-international.org/ecma-262/6.0/index.html#sec-performpromisetthen