知海

JavaScript:GiraphQL(工具)

graphql-github-io-zh-Hans生态项目与库

JavaScript:GiraphQL(工具)

简介

GiraphQL 是一个基于插件的 schema 构建器,用于在 TypeScript 中创建 code-first GraphQL schema。它使编写类型安全的 schema 变得简单,并且无需代码生成器、构建过程或大量手动类型定义。

资源

快速开始

安装核心包:

bash 复制代码
npm install @giraphql/core

如果你使用 Apollo Server,还需要安装:

bash 复制代码
npm install apollo-server

以下示例创建一个简单的 GraphQL 服务,包含一个 hello 查询字段:

ts 复制代码
import { ApolloServer } from "apollo-server"
import SchemaBuilder from "@giraphql/core"

const builder = new SchemaBuilder({})

builder.queryType({
  fields: t => ({
    hello: t.string({
      args: {
        name: t.arg.string({}),
      },
      resolve: (parent, { name }) => `hello, ${name || "World"}`,
    }),
  }),
})

new ApolloServer({
  schema: builder.toSchema({}),
}).listen(3000)

说明

  • new SchemaBuilder({}) 创建 builder 实例。
  • builder.queryType() 定义查询根类型,其中包含字段 hello
  • hello 字段接受一个可选的 name 参数,并返回问候语。
  • builder.toSchema() 将 builder 转换为 GraphQL schema,可直接供 Apollo Server 使用。

GiraphQL 充分利用 TypeScript 类型推断,在编写代码时即可获得类型安全和自动补全,无需额外代码生成步骤。

帮助我们改进文档

发现翻译问题或内容错误?请告诉我们。