如何在AWS-Amplify Vue组件中订阅所有GraphQL突变?

时间:2019-02-04 21:13:03

标签: graphql-js aws-appsync aws-amplify aws-mobilehub vue-apollo

我正尝试订阅deletecreateupdate突变的变更。

在我的GraphQL模式中,我创建了一个预订字段,该字段监听所有type Subscription { onAll: Task @aws_subscribe(mutations: ["createTask","updateTask","deleteTask"]) }的突变。

现在,当尝试使用amplify-vue组件时,如果返回响应:onSubscriptionMsg=SomeFunction(response),我将从response.data.listOfTasks收到旧任务列表。

那么我应该如何知道引起哪个突变从而更新data.listOfTasks

提前感谢您回答这个问题:)

1 个答案:

答案 0 :(得分:0)

建议将订阅分成多个订阅(例如,CreateTaskSubscription,UpdateTaskSubscription等),这样一来,您将能够根据调用的变体分别实现Vue逻辑-因为存在1-现在,订阅和突变之间有1个映射,与您的onAll订阅当前具有的一对多映射相对。

一些参考文档: