首頁  >  文章  >  web前端  >  ECMAScript 6 Promise 可以取消嗎?

ECMAScript 6 Promise 可以取消嗎?

Susan Sarandon
Susan Sarandon原創
2024-10-25 05:31:29746瀏覽

Can ECMAScript 6 Promises Be Cancelled?

取消 ECMAScript 6 Promise 鏈

有辦法從 JavaScript Promise 實例中刪除 .thens 嗎?

ECMAscript 6 Promise 預設不可取消。儘管正在進行討論,ES6 中還沒有官方解決方案。

替代方案:

  • 子類化: 創建自己的 Promise 實作允許取消,但其實作可能不可靠。
  • Userland Promise 實作:cancelable-promise 和 Promise-cancellation 等第三方函式庫提供可取消的 Promise。

解鎖測試的當前解決方案:

在測試框架中實現自定義 cancelTest 標誌,以輪詢取消請求。當逾時發生時,將cancelTest設為true並呼叫assert.fail()將測試標記為失敗。

進一步更新:

解決初始問題後( fn.call() 期間發生未捕獲的錯誤,由於測試函數本身存在未捕獲的錯誤,因此未捕獲的錯誤,因此未捕獲呼叫then() 語句。

以上是ECMAScript 6 Promise 可以取消嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn