zoukankan      html  css  js  c++  java
  • 使用输入和枚举类型

    使用输入和枚举类型

    利用输入类型,我们提高了传递给变更参数的复用性,同时也不容易出错。当把输入类型和枚举类型结合起来时,我们可以更具体地说明可以提供给特定字段的输入类型。输入类型和枚举类型非常好用,结合在一起使用更能起到事半功倍的效果。

    image

    • 用新的输入类型运行变更

    image

    还需要在Query Variables面板中发送相应的JSON:

    image

    如果并未提供category字段,则默认为PORTRAIT。或者说,如果我们提供了category值,那么它将在操作发送到服务器之前进行枚举类型验证。如果有效,则将其作为参数传递给解析器。

    • 一对多连接

    因为连接是使用对象类型的字段创建的,所以它们可以映射到解析器函数。在这些函数中,我们可以利用parent参数来确定并返回连接的数据。

    image

    • 多对多连接

    image

    GraphQL不要求数据模型和schema中的类型精确匹配。

    自定义标量

    GraphQL有其默认的标量类型,可用于任何字段。像Int、Float、String、Boolean和ID这样的标量适用于大多数情况,但也确实存在需要创建自定义标量类型来满足数据要求的情况。

    自定义DateTime标量添加到我们的typeDefs中,并在创建字段的Photo类型中使用它。created字段用于存储特定照片的发布日期和时间:

    image

    schema中的每个字段都需要映射到一个解析器。自定义的类型当然也需要映射到DateTime类型解析器。我们为DateTime创建了一个自定义标量类型,因为我们想要解析和验证使用此标量作为JavaScript Date类型的任何字段。

    因为以字符串来表示日期和时间的格式很多。比如下面这些字符串都代表了有效日期:●“4/18/2018”●“4/18/20181:30:00 PM” ●“Sun Apr 15201812:10:17 GMT-0700(PDT)” ●“2018-04-15T19:09:57.308Z” 我们可以使用这些字符串中的任何一个来创建datetime对象:

    image

    我们使用GraphQLScalarType对象为定制标量创建解析器

  • 相关阅读:
    Github开源人脸识别项目face_recognition
    yolo源码解析(3):进行简单跳帧
    [转]详细解读TrueSkill 排名系统
    yolo源码解析(3):视频检测流程
    Java中replace和replaceall的区别
    对input输入框日期显示格式化
    Eclipse修改编码字体
    Eclipse修改控制台字体
    Eclipse文档注释导出doc
    数组的定义方式及初始化
  • 原文地址:https://www.cnblogs.com/liuxiaokun/p/12676812.html
Copyright © 2011-2022 走看看