问题标签 [relayjs]
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.
relayjs - 了解跟踪查询
我不明白跟踪查询是如何工作的。
这是我的应用程序的一部分:
图形
服务器端突变
客户端突变
现在我有一个这样的Container
调用:ProgramCard
fragment
被Mutation
调用ProgramAutoInviteToggle
并且应该切换该Program
subjectSubscription
字段的值。在ProgramCard
渲染方法中,我想显示或不显示ProgramSubjectRegistrationLink
取决于subjectSubscription
值。
问题是客户端所做的实际突变如下:
没有subjectSubscription
田野的痕迹。为什么??
非常感谢你帮我解决这个问题。我真的想不通!
reactjs - 使用列表反应中继操作
结构是
我将 props.activities 作为列表获取,然后我想操作此列表,例如排序或删除不需要等,但我看到有中继对象,无法理解如何获取数据并在设置为组件之前更改它?
reactjs - 使用 GraphiQL 或 GraphQL 端点生成 schema.json
我在创建可以使用 babel-relay-plugin 解析而不会遇到错误的 schema.json 文件时遇到问题。查看中继的示例文件夹中包含的schema.json文件,我尝试在 GraphiQL 中复制查询,但似乎无法正确处理。我使用Laravel作为后端。这是我可以通过 GraphiQL 完成还是向 GraphQL 端点发送请求并保存响应?
尝试解析 schema.json 文件时发生的错误:
使用 GraphiQL 的最后一次尝试:
immutable.js - 带有 Relay-GraphQL 突变的 undo-redo 状态遍历模式
使用 Immutable 和 Flux 实现实现撤消/重做功能基本上是微不足道的。这部分是由于 Immutable 使得值传递成为可能,部分是由于使用 Flux 的浏览器/内存特性。
然而,用 Relay-GraphQL 突变来概念化这一点并不明显。是否有任何已知的模式可以简化这一点?
javascript - 使用中继的身份验证和访问控制
Facebook 的官方说法是 Relay “故意不知道身份验证机制”。在 Relay 存储库中的所有示例中,身份验证和访问控制是一个单独的问题。在实践中,我还没有找到一种简单的方法来实现这种分离。
Relay 存储库中提供的示例都具有根模式,其中包含一个viewer
假设有一个用户的字段。该用户可以访问所有内容。
然而,实际上,一个应用程序有很多用户,每个用户对每个节点的访问程度都不同。
假设我在 JavaScript 中有这个模式:
从查询用户的角度来看,一些用户是完全私有的。其他用户可能只向查询用户公开某些字段。因此,要获得用户,客户端不仅必须提供他们正在查询的用户 ID,而且还必须标识自己,以便进行访问控制。
这似乎很快变得复杂,因为控制访问的需要在图表中逐渐减少。
此外,我需要控制每个根查询的访问,例如nodeField
. 我需要确保每个节点都实现nodeInterface
.
所有这些似乎都是重复性的工作。是否有任何已知的模式可以简化这一点?我想错了吗?
graphql - 使用 Relay 验证用户输入
从外观上看,使用 Relay 进行验证的最佳方法似乎是在您的模式中使用自定义 GraphQL 标量类型。是这样吗?
reactjs - 如何为 RelayMutations 触发 Flux 动作
换句话说,如何在中继突变时更新本地状态(通量存储,例如 ModalStore、HistoryStore 等)。我能找到的唯一解决方案是使用回调来触发通量操作。然而,这变得非常多余和危险,因为每次使用突变时我都必须触发一个动作,并且那段代码取决于突变有效负载的形状。我有一种我不知道的更好的解决方案的感觉。
graphql - Graphql + Relay graphql-relay-js 依赖
所有示例都在服务器上使用 graphql-relay-js
我可以在没有 graphql-relay-js 的情况下处理 graphql 服务器并在客户端上使用中继吗?
如果一个客户端仅使用 graphql api 而另一个客户端使用中继获取数据的情况如何处理?
graphql - `RANGE_ADD` mutator 配置的`rangeBehaviors` 属性中的“GraphQL 调用”是什么?
文档描述 rangeBehaviors
为:
GraphQL 调用映射到我们希望 Relay 在这些调用的影响下将新边添加到连接时表现出的行为。行为可以是“追加”、“前置”或“删除”之一。
文档中的示例是:
在todos 示例 repo的另一个示例中,您有:
在这种情况下,什么是“GraphQL 调用”?“受到”这种呼吁的“影响”是什么意思?