Glavin001/tslint-clean-code
View on GitHubno-return-promise-mixed-type: Do not allow functions to return promises mixed with something non-promise
Open
#2 opened on Aug 18, 2017
help wantedrule
Repository metrics
- Stars
- (175 stars)
- PR merge metrics
- (No merged PRs in 30d)
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);
}