Если я делаю это с открытой консолью разработчика, я вижу сообщение об ошибке в консоли:
new Promise((resolve, reject) => {
resolve();
}).then(() => {
throw new Error('Error in vanilla promise');
});
Однако, если я это делаю, я не вижу ничего в консоли:
const query = db.streams.where('id').equals(stream.id);
return db.mycollection.where('id').equals(someId).delete()
.then(() => {
throw new Error('Error in dexie callback');
});
Я могу добавить следующее, и затем я вижу первую ошибку, сообщенную дважды (один раз тем, кто уже сообщал об этом и один раз от этого слушателя), и вторую ошибку, сообщенную один раз (от этого слушателя):
window.addEventListener('unhandledrejection', ev => {
console.error('unhandledrejection', ev.reason);
});
Почему эти два разных? Есть ли какой-нибудь способ для меня получить последовательную обработку ошибок, независимо от того, исходит ли первоначальное обещание от Декси или нет?
Я использую Dexie 2.0.4