eslint-community/eslint-plugin-promise

Rule to prevent no-op promise handlers

Aperta

#12 aperta il 12 apr 2016

 (3 commenti) (0 reazioni) (1 assegnatario)JavaScript (103 fork)auto 404
enhancementhelp wanted

Metriche repository

Star
 (998 stelle)
Metriche merge PR
 (Merge medio 1g 2h) (12 PR mergiate in 30 g)

Descrizione

See: eslint/eslint#5761

Rule to throw when the identify function is used as the success handler of a Promise or the "throw function" is used as the failure handler of a Promise.

// The identity function is the default success handler for a promise, it can be ommitted
something.then(function (value) {
  return value;
});

// and

// propagating the error is the default error handler fro a promise, it can be ommitted

something.then(null, function (err) {
  throw err;
});

// or

something.catch(function (err) {
  throw err;
});

It helps users to understand how promise values propagate.

Usually when people write .catch(err => { throw err; }) they intend to throw the error into the next tick to make sure it's reported, not to add a no-op to the end of their promise chain.

Guida contributor