他们会互相干扰吗?

时间:2021-03-14 09:21:24

标签: javascript api rest

const getUser = (userName) => {
  const controller = new AbortController();
  const { signal } = controller;
  
  {...some fetch code to a url and assign to promise variable }
    
  return [
    promise,
    controller.abort.bind(controller),
  ];
};
const userOne = getUser('userone');
const userTwo = getUser('usertwo');

当我对其中一个调用 abort 时,userOne 和 userTwo 是否会以某种方式相互干扰,因为它们都使用相同的控制器 (AbortController())?

1 个答案:

答案 0 :(得分:2)

您没有说明信号是如何准确传递到 fetch 的,但这实际上应该没有太大关系:每次调用 getUser 函数时,都会有一个 AbortController 的新实例被建造。这意味着 fetch 请求、abort 函数和每次调用 signals 创建的 getUser 都是独立的。

相关问题