如何解决重置分页以重新获取默认变量上的下拉刷新抛出光标警告?
我的平面清单上有这个道具:
onRefresh={() => {
setIsRefreshing(true);
refetch(
{ categoriesCount: 4,categoriesCursor: '' },{
fetchPolicy: 'network-only',onComplete: () => {
setIsRefreshing(false);
},}
);
}}
这是我初始化分页的方式:
const { data,loadNext,isLoadingNext,hasNext,refetch } = usePaginationFragment<
CategoriesPaginationQuery,Categories_viewer$key
>(
graphql`
fragment Categories_viewer on Viewer
@argumentDeFinitions(
categoriesCount: { type: "Int",defaultValue: 4 }
categoriesCursor: { type: "String",defaultValue: "" }
)
@refetchable(queryName: "CategoriesPaginationQuery") {
categories(first: $categoriesCount,after: $categoriesCursor)
@connection(key: "Categories_viewer_categories",filters: []) {
pageInfo {
startCursor
endCursor
hasNextPage
hasPrevIoUsPage
}
edges {
cursor
node {
id
pk
name
}
}
}
}
`,viewer
);
这是警告:
警告:中继:在光标之后出现意外``,必须从中获取边 列表的末尾(YXJyYXljb25uZWN0aW9uOjc=)。
你在argumentDeFinitions上看到categoriesCount的默认值是4,categoriesCursor是“”,我认为relay认为我在重用已经获取的变量,但我想做的是让分页“忘记它的当前边缘”然后去回到开始时拉刷新?
解决方法
要重新获取分页容器,请使用 refetchConnection
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。