React Relay对查询而不是片段进行分页



我一直在寻找一种对标准中继graphql查询进行分页的方法,而不是创建一个片段并对其进行分页。我真的找不到任何关于如何实现这一目标的文件。我只想运行查询,得到第一个n记录,然后再次运行查询(尽管我读到这不一定是最佳实践,然后加载下一个20,但增加计数并运行查询…有人做过这样的事情吗?

理论上我想要的是…

const = useLazyLoadQuery{
data,
loadNext,
loadPrevious,
hasNext,
hasPrevious,
isLoadingNext,
isLoadingPrevious,
refetch, // For refetching connection
} = usePaginationFragment(
graphql`
fragment Table_user on User
@refetchable(queryName: "UserQuery")
@argumentDefinitions(
count: { type: "Int", defaultValue: 20 }
cursor: { type: "String" }
) {
query UserQuery(
$first: Int!,
$after: String
) {
users(search: $search) {
id
name
phone
email
postalCode
status
referralCode
products
updatedAt
nextAssignmentOn
}
}
}

我相信有办法做到这一点,但多次尝试都失败了

usePaginationFragment不进行任何提取

您需要使用LazyLoadQuery或使用PreloadQuery来获取

useFragment,usePaginationFragment仅声明片段的数据要求

查看此处的新示例https://github.com/relayjs/relay-examples/pull/104

最新更新