【发布时间】:2021-02-04 11:52:19
【问题描述】:
我正在使用一个框架,我在其中找到了这样的代码:
区块1
fun_1(params, callback) {
fun_2(params, callback) {
...
fun_n(params, callback) {
asyncFunction().then(callback).catch(callback)
}
因为asyncFunction 来自已弃用的npm package,我会借此机会重构它。
我想换成这样的:
block2
fun_1(params).then(callback)
fun_1 的位置:
fun_1(params) {
fun_2(params) {
return asyncFunc() ???
}
}
第二种模式是否正确且优于第一种模式?
【问题讨论】:
-
这是在前端还是在 Node 中?
-
我只是在学习 Async 函数,但你应该使用 Promise 吗?喜欢
return new Promisse(resolve=>{ . . . -
这是在
node@CertainPerformance 上,我想 asyncFunction 返回一个 Promise 是的 -
@LuísHNrique 当你使用异步时,你应该停止直接处理 Promises,否则你会创建丑陋的代码。 async 是隐藏 Promises 的抽象。
-
这不是语法上有效的代码,所以我们不确定您在这里处理的是什么。一般来说,您可能想关注我的rules of thumb for working with promises。
标签: javascript asynchronous promise callback nested-function