basicCancel代码示例
时间: 2023-10-26 14:08:10 浏览: 193
以下是一个基本的 `cancel` 函数的代码示例,它用于取消异步操作:
```javascript
let cancelFn = null;
async function fetchData() {
try {
const response = await fetch('https://example.com/data');
const data = await response.json();
console.log('Data:', data);
} catch (error) {
console.error('Error:', error);
}
}
function cancel() {
if (cancelFn) {
cancelFn();
}
}
function start() {
const controller = new AbortController();
cancelFn = controller.abort.bind(controller);
fetchData({ signal: controller.signal });
}
// Example usage
start(); // Start fetching data
cancel(); // Cancel fetching data
```
该代码示例中,我们使用 `AbortController` 来创建一个取消函数 `cancelFn`,该函数在调用 `cancel` 函数时被调用。然后,我们将 `AbortController` 的 `signal` 属性传递给异步操作 `fetchData`,以便在调用 `cancelFn` 时取消该操作。
阅读全文