如何在GraphQL中链接两个突变?

时间:2019-10-25 13:42:19

标签: graphql apollo-client

我对GraphQL感到新鲜-刚刚完成了一门课程,在那里创建了一个书单。该代码工作正常。我输入标题,类型,authorId(通过下拉列表):

enter image description here

const addBookMutation = gql`
    mutation($name: String!, $genre: String!, $authorId: ID!) {
        addBook(name: $name, genre: $genre, authorId: $authorId){
            name
            id
        }
    }
`;

现在,我想用一个添加作者(如果不存在)的方法来扩展此UI:

enter image description here

据我所知,将涉及两个链式突变-addAuthorMutation(我仍然必须创建)和addBookMutation(它们将从以下结果中得到authorId前一个)

我的问题是什么,解决这种情况的建议做法是什么?

a)应该在客户端/阿波罗应用程序中分别调用和处理两个突变,或者 b)是否可以通过声明将它们链接起来?

我看了GraphQL - How to chain queries and mutations?-但是这个问题的答案很单一,所以希望我的问题能带来更多的运气。

0 个答案:

没有答案