Skip to content

Instantly share code, notes, and snippets.

@freekrai
Forked from domenic/not-bad-code.js
Created January 30, 2016 17:06
Show Gist options
  • Save freekrai/2ad7d6f2d4fe3af28859 to your computer and use it in GitHub Desktop.
Save freekrai/2ad7d6f2d4fe3af28859 to your computer and use it in GitHub Desktop.
Avoiding explicit promise construction antipattern
function getUserDetail(username) {
if (userCache[username]) {
return Promise.resolve(userCache[username]);
}
// Use the fetch API to get the information
return fetch('users/' + username + '.json')
.then(function(result) {
userCache[username] = result;
return result;
})
.catch(function() {
throw new Error('Could not find user: ' + username);
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment