- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在relay/graphql中,如何表达响应可以为空的查询。我现在陷入困境,我无法使用空/空响应进行响应,因为中继需要 id 字段(可能还有 graphql 架构中的其他不可为空的字段),并且我无法发送错误,因为它停止了我的组件的渲染。
例如,假设我正在对关系层次结构进行建模,并且有一个类似的查询
getSpouse(partnerID: string): Person
这对某些人来说可能是空的。因此,我要么使用 null Person 对象进行响应(我认为这对于中继来说不太可能,因为 Person 可能具有包括全局 ID 在内的不可为 null 的字段),或者发送错误。发送错误是可以的,但我不确定如何捕获此错误并继续渲染中继容器。我知道在发生突变的情况下很容易出现错误,但查询是由中继容器处理的,无法看到获取错误并继续加载组件的接口(interface)。
有没有办法捕获中继容器中的查询错误或将其传递给我的组件?
最佳答案
中继核心团队的@josephsavona 评论了一种实现此目的的方法。在 https://github.com/facebook/relay/issues/487#issuecomment-232102389
One workaround is to use a custom network layer that resolves the RelayQueryRequest if there is any data (regardless of errors), and only rejects the request if there is no data and errors.
编辑:根据评论进行详细说明。
import { DefaultNetworkLayer } from 'react-relay';
export default class RelayNetworkLayer extends DefaultNetworkLayer {
// override whichever methods (like sendMutation, sendQueries)
}
关于javascript - 继电器/graphql : nullable response or a way to catch query error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38284556/
我目前正在开发一个页面,该页面显示特定用户的一组特定“任务”的状态。为了获取数据,我有以下中继容器: export default Relay.createContainer(TaskReview,
我正在尝试进行第一个中继查询。我执行了 npm run relay 和 npm run build。一切正常,但在控制台中出现错误: 有谁知道可能导致此错误的原因吗? 更新。 Table.js (co
我有 25 个继电器,至少有 15 种不同的配置,它们必须存储在“数组”或其他简单的东西中……我必须打开/关闭这些继电器 (HiGH/LOW)。 为了使用尽可能少的内存,我想用一个“技巧”来做到这一点
我将首先介绍我的应用程序:简单的投票应用程序,用户可以在其中创建民意调查并进行投票。简单。 目前我的graphql模式由用户类型、民意调查类型和投票类型组成,其中用户和民意调查与其投票具有一对多关系,
我正在从事一个个人项目,涉及通过 USB 从我的计算机向电路发送简单信号。基本上我使用 USB 信号作为 MOSFET 的栅极信号,这将依次激活继电器以打开/关闭各种交流外围设备。例如,如果我想每分钟
我正在尝试用 Python 编写一个程序。它的作用是向 Arduino 发送一个数字,然后 Arduino 打开或不打开继电器。但它不会打开继电器。 Arduino: const int pinLED
我有一个要获取和显示的递归数据结构。我有一个图 ql 类型如下: human { name, children: [human] } 现在我想增量获取数据,因此用于对 HumanList 和
在定义 Relay 容器的片段时,我们可以有条件地包含或跳过字段。 For example ,以下代码仅当 showComments 变量为 true 时才包含 comments。 Relay.cre
我有一个带有 piface 数字连接的树莓派。我在其上运行 apache Web 服务器,并保存了一些用于打开和关闭中继的 Python 脚本。我可以从 Rpi 本身运行这些脚本,但当我尝试从连接到同
我无法在我的应用程序中导航到 /users,因为它不会触发提取我期望的所有查询。 我的应用程序由一个 App 组件和一些包含实际内容的组件组成,例如 Dashboard 或 UserList。还有一个
在relay/graphql中,如何表达响应可以为空的查询。我现在陷入困境,我无法使用空/空响应进行响应,因为中继需要 id 字段(可能还有 graphql 架构中的其他不可为空的字段),并且我无法发
我是一名优秀的程序员,十分优秀!