为了代码健壮性,亦或为了捕获异步的错误, 会频繁写 try / catch
1 2 3 4 5 6 7 8 9 10 11 12 13
| try { const res = await asyncFunc(); if (res.success) { } else { } } catch (e) { } finally { }
|
提取出来
1 2 3 4 5 6 7 8 9 10 11 12 13
| const wrapRequest = async (req) => { try { const res = await req(); if (res.success) { return [res.result, null]; } else { return [null, err]; } } catch (err) { return [null, err]; } };
|
使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| async function func() { const [res, err] = await wrapRequest(req); if (err) { } }
async function func() { const [, err] = await wrapRequest(req); if (err) { } }
|
但是每次都要引用 wrapRequest ….@$#%^&(#$%@+@!)
-
版权声明: 本博客所有文章除特别声明外,均采用
CC BY 4.0 CN协议
许可协议。转载请注明出处!
Жизнь, как качели - то вверх, то вниз.