Graphql Apollo-如何将联合类型传递给Apollo客户端
我正在使用Shopify GraphQL应用一个突变,如下图所示 我想为Graphql Apollo-如何将联合类型传递给Apollo客户端,graphql,apollo,react-apollo,Graphql,Apollo,React Apollo,我正在使用Shopify GraphQL应用一个突变,如下图所示 我想为ShopifyReturnUrl声明一个联合类型,我已经声明了: import gql from 'graphql-tag'; const shopifyReturnUrl = gql` union ShopifyReturnUrl = String | URL `; 但是,我如何将其实际放入当前定义如下的Apollo客户端实例中: const client = new ApolloClient({ fetc
ShopifyReturnUrl
声明一个联合类型,我已经声明了:
import gql from 'graphql-tag';
const shopifyReturnUrl = gql`
union ShopifyReturnUrl = String | URL
`;
但是,我如何将其实际放入当前定义如下的Apollo客户端实例中:
const client = new ApolloClient({
fetchOptions: {
credentials: 'include'
},
});
在上下文中,我在我的React应用程序中使用如下内容:
<ApolloProvider client={client}>
<Component {...pageProps} />
</ApolloProvider>
谢谢你的帮助
谢谢。这里有几个问题:
- 只能为对象类型创建联合,而不能为
之类的标量创建联合String
- 类型定义写在服务器上,而不是客户机上。作为客户机,您不能向服务器公开的模式添加其他类型,因为服务器不知道如何处理这些类型
- 如果
采用appSubscriptionCreate
参数,则传递给该参数的变量(在本例中命名为returnUrl
)应与参数的类型相同。如果您不知道参数的类型,请检查服务器或其(如果它公开了参数)。在这个特定的例子中,参数的类型是$returnUrl
URL代码>,所以这就是您的变量应该是什么
export const SUBSCRIPTION_MODIFY = gql`
mutation($subName: String!, $subPrice: String!, $returnUrl: ShopifyReturnUrl) {
appSubscriptionCreate(
name: $subName
returnUrl: $returnUrl
)
}
`