2
我有一個服務器端Node.JS腳本來處理文件上傳(1)將上傳保存到特定位置和(2)將其記錄在數據庫中。我一直在使用Asynquence庫和它的門函數(相當於Promise.all)來並行執行這些步驟,但是我需要序列的行爲,以便如果任一步失敗,如果成功,則撤銷另一步。顯然,撤銷步驟只有在其匹配步驟已經成功時纔會執行(即刪除文件或db記錄)異步步驟,等待所有步驟成功或失敗
Gate似乎不適用於這種情況,因爲如果任何步驟失敗,它將觸發錯誤處理程序。有沒有等待所有步驟成功或失敗的函數?
除了表現,你會發現按順序進行兩個階段會更簡單。因此,如果第一階段失敗了,則不需要撤銷任何東西;如果第二階段失敗了,只有第一階段需要撤消。 –