问题标签 [graphql-js]
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.
reactjs - 在 Relay 中,节点接口和全局 ID 规范起什么作用?
relay-starter-kit
我从Relay 和 GraphQL 文档开始,并且一直在研究。但有不少领域是无法解释和神秘的。
说真的,我到处阅读了很多关于所有这些事情的文档,但找不到对以下问题的任何令人满意的解释:
这个是来做什么的?我放了日志,但它甚至根本没有被调用:
而这样做的实际效果是什么:
也许与此有关,node
这里的字段是做什么的:
该领域的魔力是什么id
?是globalIdField
为了什么?
我的数据库中有一个id
,并认为我可以在我的 GraphQL 对象中使用它:
代替:
我想使用我的数据库 ID:
但如果我这样做,我会在浏览器中收到错误提示RelayQueryWriter: Could not find a type name for record '1'
。
我可以通过添加到我的组件容器 Relay Query 来消除该错误,__typename
但这似乎完全错误。
如果您能在这里提供更深入的内容和更好的解释并增强官方文档,那就太好了。
谢谢
reactjs - React Relay 获取列表
我需要获取我有 Schema 的列表
当我使用 curl 进行 graphql 请求并发送
它给了我
有人可以给我举个例子,我如何使用中继来获取它?因为所有的例子都给出了对象,然后像 Store: { teas: [...
reactjs - 使用 GraphiQL 或 GraphQL 端点生成 schema.json
我在创建可以使用 babel-relay-plugin 解析而不会遇到错误的 schema.json 文件时遇到问题。查看中继的示例文件夹中包含的schema.json文件,我尝试在 GraphiQL 中复制查询,但似乎无法正确处理。我使用Laravel作为后端。这是我可以通过 GraphiQL 完成还是向 GraphQL 端点发送请求并保存响应?
尝试解析 schema.json 文件时发生的错误:
使用 GraphiQL 的最后一次尝试:
javascript - 使用中继的身份验证和访问控制
Facebook 的官方说法是 Relay “故意不知道身份验证机制”。在 Relay 存储库中的所有示例中,身份验证和访问控制是一个单独的问题。在实践中,我还没有找到一种简单的方法来实现这种分离。
Relay 存储库中提供的示例都具有根模式,其中包含一个viewer
假设有一个用户的字段。该用户可以访问所有内容。
然而,实际上,一个应用程序有很多用户,每个用户对每个节点的访问程度都不同。
假设我在 JavaScript 中有这个模式:
从查询用户的角度来看,一些用户是完全私有的。其他用户可能只向查询用户公开某些字段。因此,要获得用户,客户端不仅必须提供他们正在查询的用户 ID,而且还必须标识自己,以便进行访问控制。
这似乎很快变得复杂,因为控制访问的需要在图表中逐渐减少。
此外,我需要控制每个根查询的访问,例如nodeField
. 我需要确保每个节点都实现nodeInterface
.
所有这些似乎都是重复性的工作。是否有任何已知的模式可以简化这一点?我想错了吗?
graphql - 使用 Relay 验证用户输入
从外观上看,使用 Relay 进行验证的最佳方法似乎是在您的模式中使用自定义 GraphQL 标量类型。是这样吗?
rest - 嵌套资源上的 GraphQL 突变
突变是用于操作数据的查询。如果是这样,那么我的root query
和root mutation
树应该看起来相似吧?它们都应该允许嵌套字段(嵌套突变)。我正在玩这个(使用express-graphql
)并且它有效。
例子:
这是一个有效的例子吗?突变应该像这样嵌套吗?如果不是,我应该如何处理嵌套资源?我找不到任何会改变嵌套资源的真实示例。所有示例仅在第一级(根突变上的字段)上定义突变。
javascript - GraphQl 中的动态(唯一)对象
我在看graphql。是否可以定义具有任意属性的对象?假设我有一些数据,例如:
这是在:
假设 editOptions 从不具有相同的结构,有时没有颜色是有用的,只是为了举例。在猫鼬中,可以将类型定义为:
编辑选项:{}
这些 editOptions 通常对于每个框都是唯一的。有些属性是共享的,但大多数是独一无二的。
所以我的问题是,有没有办法做到这一点?或者这是不好的做法,我应该改变我的模型。
谢谢你。
javascript - GraphQL/Relay Schema“无法查询字段...”
我在查询 graphql/relay 中的某些字段时遇到问题。我正在尝试在下面的架构中查询 Courses 上的“courseName”字段。
如果我查询用户,例如:
{用户(id:1){名字,姓氏}}
它工作并返回正确的响应。
这是我的架构:
这是我的database.js:
当我尝试查询:
{ 用户 (id:1){courses{courseName}} }
它给了我错误:
“无法在‘CourseConnection’中查询字段‘courseName’”
好像是连接有问题。我也在用 cURL 测试这个查询。因为我想在移动到反应/中继之前测试架构。
我错过了什么?谢谢你。
graphql-js - 在 GraphQL 中,如何将嵌套数组指定为字段类型?
在 GraphQL 中,我正在尝试创建 GeoJSON 对象类型。
当我指定 s 的 4 维数组GraphQLFloat
时,启动服务器时出现错误:
类型定义如下所示:
如何解决此错误?这是它在源代码中抛出的地方:
graphql - 没有子部分的 GraphQL 突变
我想发送不带子部分的 graphql 变异请求
我得到
添加 { id } 以请求工作正常,但我不想要
还有架构代码