Dies ist jetzt der Fall. Funktion a ist ein Versprechen, das Daten asynchron zurückgibt. Jetzt muss ich a().then() so für jede Funktion verarbeiten, die auf diesen Daten basiert
function a() { return new Promise((resolve, reject) => { .... }) } function getsub(id) { return a() .then((data) => { return ..... }) .catch((err) => {...}) } function tree(id) { return a() .then((data) => { return ..... }) .catch((err) => {...}) }
Es gibt einige rekursive zyklische Abhängigkeiten. Wenn die Komplexität zunimmt, habe ich das Gefühl, verrückt zu werden. Gibt es eine andere bessere Möglichkeit, es zu schreiben?
可以用点函数式编程的写法:
尝试一下 ES7 的 async/await ?
或者 引入 async.js 库,前后端通用。
如果实时性和独立性要求都很高,那好像是没什么办法...不然可以尝试缓存a...看看其他人怎么说