重置分页以重新获取默认变量上的下拉刷新抛出光标警告?

问题描述

我的平面清单上有这个道具:

 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

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...