DeltaSync-Update function in SubscriptionQuery is never called

0

I am implementing my own Sync object as I am working with connectionModels. Everything works fine with the BaseQuery and DeltaQuery objects. however when I do a mutation, I expect the update function from the SubscriptionQuery object to be called and then be able to update my queries according the most recent data, however this never happens. the update function is never called. I am working with this client https://github.com/awslabs/aws-mobile-appsync-sdk-js, i tried to debug the code but couldn't find any information.
This is how is my code as referenced on the amplify documentation https://aws-amplify.github.io/docs/js/api#delta-sync & the types detailed in the code https://github.com/awslabs/aws-mobile-appsync-sdk-js/blob/997e3d8a958ee2e2d9ffd00fd1eaf20e11343c98/packages/aws-appsync/src/client.ts#L275

subscriptionQuery: {
   query: gql(onSubscription),
    variables: {
     id:  { "eq": this.id},
    },
    update: (store, {data}) => {
        console.log(data);
        console.log(store);
     }
},

Also I created a standard subscription, to check if the issue was on the backend but no, the subscription worked fine with the following code

this.randomSubscription = await this.client.subscribe({
     query: gql(onSubscription),
     variables: {
      id:  { "eq": this.id},
     },
}).subscribe({
     next: (data) => {
          console.log(data);
      },
      error: error =>{
              console.log('ERROR----->',error)
      }
});

I would really appreciate your feedback on this issue.

질문됨 5년 전240회 조회
1개 답변
0

Had an issue with GraphQL schema. On subscriptions I am not using filters, just plain variables, so the variables object of the subscriptionQuery was wrong.

답변함 5년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠