如何在 Apollo 中使用两种模式?

问题描述 投票:0回答:1

根据 apollo 文档,您必须通过在名为 apollo-codegen-config.json:

的文件中设置 url 来下载架构
"schemaDownloadConfiguration": {
"downloadMethod": {
    "introspection": {
        "endpointURL": "https://myApp.com/v1/cats/_/graphql",
        "httpMethod": {
            "POST": {}
        },
        "includeDeprecatedInputValues": false,
        "outputFormat": "SDL"
    }
},
"downloadTimeout": 60,
"headers": [],
"outputPath": "./graphql/schema.graphqls"

}

问题是当我想使用另一种方案时,例如。 https://myApp.com/v1/dogs/_/graphql,这些方案有时共享相同的模型,例如:

type State {
  country: ID!
  state: String!
}

然后 cli 返回:

There can be only one type named "Date".

如何添加这两个模式?以及它如何知道何时指向 /cats/dos

ios swift graphql apollo
1个回答
0
投票

我们使用两个配置,每个配置对应一个模式。我们下载并生成两个目录中的所有文件。这“解决”了您的阿波罗问题。

现在你会遇到一个 Swift 问题,因为生成的类会发生冲突。我们在生成后使用额外的步骤来重命名两个目录之一中的所有类型。我们添加一些前缀。您甚至可以同时添加前缀:DogsState... 和 CatsState...

© www.soinside.com 2019 - 2024. All rights reserved.