问题标签 [graphql-codegen]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
777 浏览

aws-amplify - 如何在已配置 codegen 的地方运行 amplify codegen?

我们有一个项目 repo,后端团队在其中添加了新的 api。其他开发人员已经运行并配置了放大和代码生成。现在我想添加这些新查询及其类型。当我运行放大代码生成时,我收到此错误:

当我运行 amplify add codegen 时,它说 Codegen 每个项目只支持一个 GraphQL API。有人可以指导我这样做的正确方法是什么。

0 投票
0 回答
98 浏览

graphql - 需要一个对开发人员友好的 GraphQL 客户端代码生成器

一个关于基于方案的代码生成的问题,在此之前我使用的是 REST,因为它有一个代码生成器(openapi codegen),它在输出端输出一个现成的服务(类),并翻译来自蛇的字段-样式到骆驼样式,类型检查等。 P. GraphQl 有没有这样的东西,尝试了 graphql-code-generator - 它输出的不是类/服务,而是类型接口。

0 投票
1 回答
1719 浏览

graphql-codegen - 使用带有 Graphql 的 RTK 查询

到目前为止,我知道我需要建立自己的baseQuery. 我可以像这里https://rtk-query-docs.netlify.app/examples/react-with-graphql中的示例一样编写graphql查询和突变,如果我添加类型query.builder这样的查询和突变,我是否可以获得完整的类型安全性builder.query<Device, void>或者我必须使用这样的东西https://www.graphql-code-generator.com/docs/plugins/typescript-graphql-request#simple-request-middleware。在后一种情况下,baseQuery如果我为 graphql-request 库使用生成的钩子,我应该怎么看。

这是来自2的钩子示例:

我在想类似的事情:

代码并没有真正的意义,但我希望你能明白我的意思。谢谢 :)

0 投票
1 回答
227 浏览

graphql - 在加载之前从模式中删除自定义指令

我正在使用graphql-codegen插件typescript-mongodb从 qraphql 模式生成数据库模型文件。因此,我的架构包含来自typescript-mongodblike@entity@column. codegen 工作正常,但是当我使用该graphql-tools loadSchemaSync函数加载架构时,我得到一个架构验证错误,它抱怨未知指令。

可能最简单的解决方案是将 mongo 插件指令定义添加到模式中(我也无法开始工作)。但是在 graphql-codegen 生成配置文件之后,实际上没有任何理由在模式中包含这些指令。

所以我想知道在将模式文件加载到可执行模式之前,是否有一些标准方法可以从模式中删除与 mongo 相关的指令作为中间步骤?

或者有没有办法告诉 loadSchemaSync 函数忽略“未知指令”错误?

这是我当前加载架构文件的代码:

0 投票
1 回答
97 浏览

typescript - 在 .graphql 文件中定义 GraphQL 对象类型不起作用

我正在尝试在 type-graphql 中进行突变,其中一个参数是 Object 所以:

所以我为参数“图像”创建了一个输入类型:

和一个对象类型:

现在我正在尝试使用 GraphQL 代码生成器,我需要在客户端编写查询和突变作为 .graphql 文件扩展名,所以我有:

现在,当我尝试运行“npm run gen”时说:

GraphQLDocumentError:未知类型“ImagesArray”。

我试图在上面添加:

不再工作了,有什么想法吗?

0 投票
0 回答
159 浏览

graphql - 当子类型有参数时,使用 graphql-codegen-maven-plugin 生成 DTO 类

我想使用 graphql-codegen-maven-plugin 和使用 graphql 模式生成 POJO (DTO) 类。如果我没有在observationHistory 发送游标参数,则可以生成,但无法使用游标参数生成。

除了 id 和 type 等初始参数外,我还需要发送游标参数。我想实现分页,所以需要那个游标参数。

GraphQL 架构

我的代码库

0 投票
2 回答
512 浏览

typescript - typescript 和 graphql-codegen 之间的枚举不匹配

我目前正在尝试解决以下问题,但并没有走得太远。目前,我正在运行一个 Apollo-Server 作为我的 graphQL 服务器,并使用 postgres 数据库配置了 prisma2,并且正在使用 graphql-codegen 从我的模式中生成类型。目前,我正在尝试更新一个具有多对多关系的模型,并且抛出了非常奇怪的打字稿错误。我很确定我的更新不正确,但我看到的错误没有帮助。

以下是相关的代码片段:

棱镜模式

权限.gql

最后是解析器中的违规代码:

更新权限.ts

我收到以下打字稿警告:

我不明白为什么它认为 PermissionVerb 是不可分配的——正如我从 .prisma/client/index 和 generated/graphql 看到的那样,两个枚举都是相同的。不知道我在这里缺少什么。

任何帮助将不胜感激!谢谢

0 投票
2 回答
108 浏览

docker - 在构建之前让一个 Docker 映像等待另一个完成

我对 docker 很陌生(提前为我的术语错误/我的知识空白表示歉意)并且拥有三项服务,其中一项依赖于一项才能完成才能构建。

将 repo 设置为将它们都作为子模块,并由以下 docker 文件组成。

这些操作是 Hasura 的扩展,需要 Hasura 启动并运行才能正确设置。这是 docker 文件的样子:

yarn graphql文件使用graphql-codegen.

是否可以编排 docker 在构建操作之前等待 Hasura 实例准备好?或者我是否需要一个 bash 脚本,如果需要,它会是什么样子并运行?我正在寻找的是一种解决方案,npm run graphql它会不断重新运行,直到它能够从 Hasura 下载 graphql 模式,然后运行npm run start​​.

我有点超出我的深度,所以任何见解或提示都值得赞赏。我已经尝试在本地存储 graphql 模式(所以我不需要等待 Hasura 准备好获取它)但是这实际上不起作用,因为我需要 Hasura 和要同步的操作(因此从Hasura 在构建时)。我还与团队联系,graphql-coden他们提到没有 CLI 标志或配置允许他们的代码继续重试下载模式,直到它准备好。

0 投票
0 回答
72 浏览

graphql-codegen - 有没有一种方法可以将解析器与 graphql-codegen 结合起来,比如 graphql-resolvers?

尝试将 typescript 与 graphql-resolvers 一起使用

使用 graphql-resolvers 第一个 getSample 输入正确并且可以工作,但第二个不喜欢 combineResolvers 的返回值并引发类型错误:(我一次尝试一个)

错误:

我可以转换 combineResolvers 的返回值吗

0 投票
2 回答
3209 浏览

graphql-codegen - 如何在 RTK-Query 插件中向端点添加标头?

尝试遵循官方页面上相当稀疏的教程并没有让我走得太远。

我实际上是在尝试根据 api 调用的参数添加某个标头,但我不知道如何配置端点来这样做。