我有一个gql查询MY_Q和一个数据项列表,比如data_list = [data1, data2]
如何对每个数据项上的多个useLazyQuery()进行分组,并等待所有查询完成后再处理数据。
类似于Promise.all()。
示例:-
Promise.all (data_list.map((e) => useLazyQuery(MY_Q , { variables : { data :
e}}))).then ((res) {
//process result.
})发布于 2021-07-19 16:32:02
我不会使用promises,因为您会希望钩子在您的React组件中返回什么,不是吗?
只需为每个单独的查询定义钩子,然后根据到目前为止返回的内容进行呈现。当一切都被获取时,渲染,如果没有,在组件中渲染一个加载的视图。
function SomeComponent () {
const [fetchInitial, {data, fetchMore}] = useLazyQuery(QUERY, {
variables: {
dataSets: [
dataSet1,
dataSet2
]
}
});
}https://stackoverflow.com/questions/68431743
复制相似问题