a.d.be...@web.de wrote:
Hi,
I've just got bitten by

     return getError().then(Promise.reject);

where `reject` threw an error that its `this` value was not a Promise 
constructor.

Would it help to make the `C` constructor (in Promise.resolve, Promise.reject, 
Promise.all, Promise.race algorithms) default to `Promise` when no `this` value 
is supplied (throw only if it's there, but not an object and constructor 
function)?

No, because as you suggested:

Or is this considered to be too error-prone with Promise subclassing, where 
`.then(MyCustomPromise.reject)` would not work as expected (fail silently)?

Probably the best solution is an arrow:

    return getError().then(r =>  Promise.reject(r));


/be
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to