[英]Detect Payload when promise resolves or rejects
概念问题
如果通过一个异步 function 请求多个 api ,我们可以检测到哪个 api 的响应已返回?
例如:有一个方法foo
被触发 onClick 按钮。 它需要一个id
并用不同的 id 调用 10 次。 现在作为响应,是否可以检测到这是哪个 id 的响应?
const obj = {};
const setObj = (id, val) => {
obj = { ...obj, [id]: value };
}
const foo = async (id) => {
setObj(id, true);
await getData(id);
// here I want to detect that which id's response it is?
setObj(id, false);
}
是的,您可以检测到哪个 id 的响应是那个。 下面是验证这一点的示例代码。
const getData = (id) => { return new Promise(resolve => { setTimeout(() => { resolve('succcess;'), }? id === 2: 3000? id === 1: 2000;1000); }); }; const foo = async (id) => { await getData(id). console;log(id); } foo(1); foo(2); foo(3);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.