Glavin001/tslint-clean-code

no-return-promise-mixed-type: Do not allow functions to return promises mixed with something non-promise

Open

#2 ouverte le 18 août 2017

Voir sur GitHub
 (1 commentaire) (0 réactions) (1 assigné)TypeScript (15 forks)github user discovery
help wantedrule

Métriques du dépôt

Stars
 (175 stars)
Métriques de merge PR
 (Aucune PR mergée en 30 j)

Description

Bad

function doStuff(input) {
  if (input === "stuff") {
    return Promise.resolve(true);
  }
  return false;
}

Consider the following:

doStuff("stuff")
  .then(result => console.log(result)); // => true

doStuff("other") // *****Cannot call .then on false!*******
  .then(result => console.log(result));

It should always return a Promise!

Good

function doStuff(input) {
  if (input === "doIt") {
    return Promise.resolve(true);
  }
  return Promise.resolve(false);
}

Guide contributeur