【发布时间】:2021-09-17 17:10:35
【问题描述】:
我需要在组件挂载时调用状态变化查询。 假设我在数组中有 5 个状态,我正在循环该数组。
预期的输出应该是:该查询必须被调用 5 次。
但问题是只调用了一次查询数组中最后位置的状态。
const loadedStatus = ["A", "B", "C", "D", "E"]
const [listSomeData] = useLazyQuery(LIST_SOME_DATA, {
fetchPolicy: 'network-only'
});
const listSomeDataHandler = async (statusId, pagination = {}, filters = {}) => {
await listSomeData({
variables: {
statusId,
page: pagination?.page,
pageSize: pagination?.pageSize,
...filters
}
});
};
useEffect(async () => {
loadedStatus &&
Promise.all(
loadedStatus.map(status => {
listSomeDataHandler(
status.id,
{ page: 0, pageSize: 10 },
filters
);
})
);
},[loadedStatus]);
【问题讨论】:
-
你能分享一些代码吗?从现在开始你做了什么?
-
@GiovanniEsposito 我添加了一些代码。请看一下
标签: node.js reactjs graphql apollo-client apollo-server