我被承諾卡住了。如何創建一個類似於鑽石的js承諾鏈
說我的程序結構是這樣的
Func A //gets data then passes to I1 and J2
/ \
Func I1 Func J1 //then route I & J run without interaction
| |
Func I2 Func J2
\ /
Func B //Func B gets both the result of both
我有一點麻煩這個工作。 我只要
getdata.then(data=>{
var methods = Promise.all([
funci1.x(data).then(output=>{
funci2.x(output)
}),
funcj1.x(data).then(output2=>{
funcj2.x(output2)
})
])
methods.then(([a,b])=>{
console.log(a,b);
})
})
但它似乎並沒有工作。任何幫助?
主要問題是您使用箭頭功能。爲了澄清,'()=> {...}'執行花括號內的代碼,並且只有在有明確的'return'語句時才返回一個值。 '()=>語句'另一方面隱式返回'語句'的結果 – Phil
看起來更像一個梯形(辛普森參考) –