Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
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);
});
}

justsml commented Feb 4, 2016

Hey @domenic - Nice example of fetch - a really badly needed (native) Browser API.

I was curious to know your thoughts on @isaacs Promise-hatefest this month and my comment detailing Promise-based solutions.

Here's the sample code https://gist.github.com/justsml/0afefe73da112df90dae

Thanks!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment