try/catch/else
Augusto Moura
augusto.borgesm at gmail.com
Fri Feb 9 13:46:20 UTC 2018
I see this operator quite confusing, in my opinion it's a best practice
treat the functions (and errors) separately. If you want to ignore the
second error you can even create a `silent` helper.
```js
const treatedShowSuggestions = (suggs) => {
try {
showSuggestions(suggs);
} catch (e) {
// treat error
};
try {
const suggestions = await fetchSuggestions();
treatedShowSuggestions(suggestions);
} catch (e) {
alert('Failed to load suggestions');
}
```
or
```js
const silent = (fn) => {
try {
fn();
} catch (e) {}
};
try {
const suggestions = await fetchSuggestions();
silent(() => showSuggestions(suggestions));
} catch (e) {
alert('Failed to load suggestions');
}
```
This isn't even a workaround, it's just the right approach for what you
want. If you wanna to evict the separated functions you can just inline the
try/catch in the main function.
--
Augusto Moura
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20180209/10996e93/attachment.html>
More information about the es-discuss
mailing list