該 @azure/abort-controller 套件提供 AbortSignalLike 介面與 AbortError 類別,使現代 JavaScript 平台內建的 AbortControllerAbortSignal 及 Used by fetch 操作更為方便。
一般來說,Azure SDK for JavaScript 的用戶不需要使用這個函式庫。 相反地,他們會使用AbortController並AbortSignal由平台提供,並將中止訊號傳遞給 Azure SDK 操作。
主要連結:
入門指南
安裝
使用 npm 安裝此函式庫,如下所示
npm install @azure/abort-controller
關鍵概念
用AbortController來建立一個AbortSignal,然後再傳給 Azure SDK 操作,取消待處理的工作。 可 AbortSignal 透過 signal 實 AbortController例化的屬性存取。
AbortSignal A 也可以直接從靜態方法返回,例如 AbortSignal.timeout(100)。
該訊號在100毫秒後被取消。
Examples
以下範例假設 是一個 doAsyncWork 函數,取一袋性質,其中之一是中止信號的函數。
範例一 - 基本用法
async function doAsyncWork(options: { abortSignal: AbortSignal }): Promise<void> {
if (options.abortSignal.aborted) {
return;
}
// do async work
}
const controller = new AbortController();
doAsyncWork({ abortSignal: controller.signal });
// at some point later
controller.abort();
範例 2 - 暫停終止
async function doAsyncWork(options: { abortSignal: AbortSignal }): Promise<void> {
if (options.abortSignal.aborted) {
return;
}
// do async work
}
const signal = AbortSignal.timeout(1000);
doAsyncWork({ abortSignal: signal });
下一步
您可以在本機建置及執行測試,方法是執行 npm run test。 探索 test 資料夾,以查看公用類別的進階使用方式和行為。
Troubleshooting
如果您在使用此函式庫時遇到問題,請隨時提交問題。
Contributing
如果您想要參與此連結庫,請閱讀 參與指南,以深入瞭解如何建置和測試程序代碼。