facebook / facebook/relay

Streaming pagination is not working properly

Open
#4,201 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
19k
Forks
1.9k
PR merge metrics
No merged PRs in 30d

Description

I am using the streaming pagination with chillicream api
This is my fragment:

```
export const TodosFragment = graphql`
fragment TodosFragment on Query
@refetchable(queryName: "TodosPaginationFrgament") {
todos(before: $before, after: $after, first: $first, last: $last)
@stream_connection(key: "List__todos", initial_count: 2) {
__id
pageInfo {
hasNextPage
}
edges {
node {
title
body
id
isCompleted
}
}
}
}
`;
```
And this is my query:

```
export const TodosQuery = graphql`
query TodosQuery($before: String, $after: String, $first: Int, $last: Int) {
...TodosFragment
}
`;
```

And i am usign those like this:

```
const todos = useLazyLoadQuery(TodosQuery, {});

const { data, loadNext } = usePaginationFragment<
TodosPaginationFrgament,
TodosFragment$key
>(TodosFragment, todos);
```

And the netwrok response is like this :

```
---
Content-Type: application/json; charset=utf-8

{"data":{"todos":{"edges":[]}},"hasNext":true}
---
Content-Type: application/json; charset=utf-8

{"label":"TodosFragment$defer$List__todos$pageInfo","path":["todos"],"data":{"pageInfo":{"hasNextPage":false,"endCursor":"OQ==","hasPreviousPage":false,"startCursor":"MA=="}},"hasNext":true}
---
Content-Type: application/json; charset=utf-8

{"label":"TodosFragment$stream$List__todos","path":["todos","edges",0],"data":{"node":{"title":"Firs todo","body":"Some desc","id":"VG9kbwpkNjM1ZDhmYTY5YzY2OTRmZmM4OGU4OTdm","isCompleted":false,"__typename":"Todo"},"cursor":"MA=="},"hasNext":true}
---
Content-Type: application/json; charset=utf-8

{"label":"TodosFragment$stream$List__todos","path":["todos","edges",1],"data":{"node":{"title":"Test","body":null,"id":"VG9kbwpkNjNjZDhhNzRlYjQxZDYzNDg4ZjBjMDQ2","isCompleted":false,"__typename":"Todo"},"cursor":"MQ=="},"hasNext":true}
---
Content-Type: application/json; charset=utf-8

{"label":"TodosFragment$stream$List__todos","path":["todos","edges",2],"data":{"node":{"title":"Test","body":null,"id":"VG9kbwpkNjNjZDhhOTFlYjQxZDYzNDg4ZjBjMDQ3","isCompleted":false,"__typename":"Todo"},"cursor":"Mg=="},"hasNext":true}
---
Content-Type: application/json; charset=utf-8

{"label":"TodosFragment$stream$List__todos","path":["todos","edges",3],"data":{"node":{"title":"Test","body":null,"id":"VG9kbwpkNjNjZDhhOTRlYjQxZDYzNDg4ZjBjMDQ4","isCompleted":false,"__typename":"Todo"},"cursor":"Mw=="},"hasNext":true}
---
Content-Type: application/json; charset=utf-8

{"label":"TodosFragment$stream$List__todos","path":["todos","edges",4],"data":{"node":{"title":"Test3","body":null,"id":"VG9kbwpkNjNjZDkxODU1YjAxNmY5NDEyMDAzYWY0","isCompleted":false,"__typename":"Todo"},"cursor":"NA=="},"hasNext":true}
---
Content-Type: application/json; charset=utf-8

{"label":"TodosFragment$stream$List__todos","path":["todos","edges",5],"data":{"node":{"title":"Test4","body":null,"id":"VG9kbwpkNjNjZDkxODk1YjAxNmY5NDEyMDAzYWY1","isCompleted":false,"__typename":"Todo"},"cursor":"NQ=="},"hasNext":true}
---
Content-Type: application/json; charset=utf-8

{"label":"TodosFragment$stream$List__todos","path":["todos","edges",6],"data":{"node":{"title":"Test5","body":null,"id":"VG9kbwpkNjNjZDkxOGM1YjAxNmY5NDEyMDAzYWY2","isCompleted":false,"__typename":"Todo"},"cursor":"Ng=="},"hasNext":true}
---
Content-Type: application/json; charset=utf-8

{"label":"TodosFragment$stream$List__todos","path":["todos","edges",7],"data":{"node":{"title":"Test6","body":null,"id":"VG9kbwpkNjNjZDkxOTE1YjAxNmY5NDEyMDAzYWY3","isCompleted":false,"__typename":"Todo"},"cursor":"Nw=="},"hasNext":true}
---
Content-Type: application/json; charset=utf-8

{"label":"TodosFragment$stream$List__todos","path":["todos","edges",8],"data":{"node":{"title":"Test7","body":null,"id":"VG9kbwpkNjNjZDkxOTU1YjAxNmY5NDEyMDAzYWY4","isCompleted":false,"__typename":"Todo"},"cursor":"OA=="},"hasNext":true}
---
Content-Type: application/json; charset=utf-8

{"label":"TodosFragment$stream$List__todos","path":["todos","edges",9],"data":{"node":{"title":"Test8","body":null,"id":"VG9kbwpkNjNjZDkxOWE1YjAxNmY5NDEyMDAzYWY5","isCompleted":false,"__typename":"Todo"},"cursor":"OQ=="},"hasNext":true}
---
Content-Type: application/json; charset=utf-8

{"hasNext":false}
-----
```

Bu i am getting the following error on the react relay on [QueryResource.js:196:6]:

Uncaught SyntaxError: JSON.parse: unexpected non-digit at line 2 column 2 of the JSON data

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.