Graphql 如何为类型(例如字符串、int…)添加别名

Graphql 如何为类型(例如字符串、int…)添加别名,graphql,Graphql,我从医生那里知道我可以。但是我怎么能给一个类型加别名呢 例如,如何为int或string类型设置别名?type MyStringType=String有效吗 动机 我有一个signinmutation,它返回一个auth令牌,我想编写如下内容: type Mutation { signin(email: String!, password: String!): AuthToken } type AuthToken = String const { GraphQLString, Grap

我从医生那里知道我可以。但是我怎么能给一个类型加别名呢

例如,如何为int或string类型设置别名?
type MyStringType=String
有效吗

动机 我有一个
signin
mutation,它返回一个auth令牌,我想编写如下内容:

type Mutation {
    signin(email: String!, password: String!): AuthToken
}
type AuthToken = String
const { GraphQLString, GraphQLScalarType } = require('graphql')
const AuthToken = new GraphQLScalarType({
  name: 'AuthToken',
  description: 'Your description here',
  serialize: GraphQLString.serialize,
  parseValue: GraphQLString.parseValue,
  parseLiteral: GraphQLString.parseLiteral,
})

GraphQL不支持类型别名

但是,可以使用与现有标量相同的属性(但名称不同)实现自定义标量。您的问题不清楚您使用的是什么语言或库,但在GraphQL.js中,您可以执行以下操作:

type Mutation {
    signin(email: String!, password: String!): AuthToken
}
type AuthToken = String
const { GraphQLString, GraphQLScalarType } = require('graphql')
const AuthToken = new GraphQLScalarType({
  name: 'AuthToken',
  description: 'Your description here',
  serialize: GraphQLString.serialize,
  parseValue: GraphQLString.parseValue,
  parseLiteral: GraphQLString.parseLiteral,
})

这里有一些方法。请记住,这样做实际上可能会使客户机的工作更加困难,尤其是那些用强类型语言编写的客户机。如果您不需要自定义序列化或解析行为,我将坚持使用内置标量。

谢谢您的回答!!