现在是有好几个函数,里面都是执行异步函数。
我就想把这个函数里面的值返回,当然嘛,由于是异步,还没等执行完就关了,所以外面也拿不到值。
之前是问了前端说是传进去你想执行的方法,或者值就行了,一步步往进传。
后来我用了promise,虽然这玩意是能帮助我分开,
但是我现在在第一个的then里又是一个返回promise的函数,又得then,还是造成了层层嵌套。
用了链式也就那样。虽然这三个函数是有顺序的,但是有时候不是需要第一个函数,
但不一定要前两个执行,就是我这后两个都是通过传参数进去来执行相应的方法。
用promise不就绑死了吗。
难道我要写两个链式,分别是123 23 。这样的话不就冗余了吗。
有没有什么依赖可以帮助解决这个问题
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
试试使用co模块或者用es7的await函数
非要用async await么。
感觉语义的清晰程度上是不如.then.then.then的
理论上说 Promise 会嵌套,但不是层层嵌套,比如
如果还要其它东西,就顺序增加就是了。
更新:
如果有时候 ABC,有时候 BC,可以使用
Promise.resolve()方法。使用ES7的async/await语法吧。
这个语法的设计理念就是等异步任务完成再往下运行代码。相当于用同步的方式来写处理异步代码!和你想要的一样。不过,它也是要借助Promise这个东西。
先执行A函数,根据A函数的返回结果根据逻辑执行B还是C