В определенной функции Query subscribeToMore я не могу заставить Query получать новые данные.
updateQuery: async (prev, { subscriptionData } ) => {
const posts = [
...prev.getPosts,
subscriptionData.data.postCreated
];
const result = {
...prev,
count: posts.length,
getPosts: posts
}
return result;
}
Это приводит к следующей ошибке:
Отсутствует поле getPosts в {}
Если я регистрирую результат, я получаю:
Object {getPosts: (3) […], count: 3}
Я не уверен, что является причиной этого, поскольку это кажется нормальным для некоторых других вызовов updateQuery. Этот, в частности, кажется, сломался.
Запросы, о которых идет речь:
export const POST_CREATED = gql`
subscription postCreated($authorId: ID!){
postCreated(authorId: $authorId){
id, title, createdAt, published
}
} `;
export const GET_POSTS = gql`
query getPosts($authorId: ID!){
getPosts(authorId: $authorId){
id, title, createdAt, published
}
} `;