在 graphql-tag 中定义 JSON/Object 类型
Posted
技术标签:
【中文标题】在 graphql-tag 中定义 JSON/Object 类型【英文标题】:Defining JSON/Object type in graphql-tag 【发布时间】:2018-10-19 07:11:34 【问题描述】:我对 Apollo gql 有点陌生,只是想知道是否有人知道是否可以在 graphql-tag 中定义 Object 类?
export const CREATE_STYLE = gql`
mutation styleCreate(
$formID: String!
$fontFamily: Object //how do you define object/JSON object?
)
styleCreate(
formID: $formID
fontFamily: $fontFamily
)
styleID
`;
【问题讨论】:
【参考方案1】:首先,如果输入类型是一个对象,我建议在服务器上将其定义为input type。
在我使用的设置中:
export const createUser = gql`
mutation createUser($user: UserCreate)
create(input: $user)
name
email
其中“UserCreate”是一个看起来像这样的界面:
export interface UserCreate
// The user name.
name: string,
// The user email address.
email: string,
;
您可以手动创建界面,但我建议使用apollo codegen,它可以为您提供所需的所有输入类型。
【讨论】:
以上是关于在 graphql-tag 中定义 JSON/Object 类型的主要内容,如果未能解决你的问题,请参考以下文章
如何将 GraphQLObjectType 与 graphql-tag 和 gql-tag 创建的模式结合起来?
graphql-tag 的 Webpack 加载器未在 Angular 8 中加载
为啥将 Apollo 与 Nuxt 一起使用需要 graphql-tag?
GraphQL“必须提供查询字符串” graphql-tag react-apollo
node_modules/graphql-tag/lib/index.d.ts(2,57) 中的 Angular 7 错误:错误 TS1005:“,”预期