// const request = new Promise((resolve,reject)=>{
// setTimeout(()=>{
// resolve('收到服务端数据')
// },Math.random()*3000)
// })
// function timeoutWrapper(p,timeout=2000){
// const wait = new Promise((resolve,reject)=>{
// setTimeout(()=>{
// reject('请求超时')
// },timeout)
// })
// return Promise.race([p,wait])
// }
// const req = timeoutWrapper(request)
// req.then(res=>console.log(res)).catch(e=>console.log(e))
const controller = new AbortController();
const signal = controller.signal;
fetch('https://slowmo.glitch.me/5000', { signal })
.then(res=>res.json())
.then(res=>console.log(res))
.catch(err=>{
if(err.name==='AbortError'){
console.log('aborted',err.name)
}else{
console.log('error')
}
})
setTimeout(() => {
controller.abort();
}, 200);
console