【发布时间】:2016-04-25 06:36:54
【问题描述】:
我有一个要获取和显示的递归数据结构。我有一个图形 ql 类型如下:
human {
name,
children: [human]
}
现在我想增量获取数据,因此用于响应类 HumanList 和 HumanItem,我只在单击项目时使用中继来获取子项。在我的实际代码中继中,在非常点击时给孩子一个空值,即在渲染第一组孩子时。我在中继操场上尝试了测试代码,发现了类似的问题。 Here 是要点的链接。 Playground.js 包含代码部分,Playground.gql.js 包含架构部分。单击每个数字在其下打开子项。在 3 或 4 级之后,它开始显示Found children as null。对我来说,它发生在1.1.2.2。如果您没有发生这种情况,请尝试在 SCHEMA 代码中添加更多级别,并且会弹出错误。
我已经检查过中继问题 #246 和 #536,但都没有帮助。
非常欢迎任何帮助。
【问题讨论】:
-
我从要点中创建了一个 Relay Playground - 只需复制粘贴代码和模式文件 - 它完全按预期工作,当单击父名称时,子项会扩展。你能直接链接到一个破碎的操场吗?这将有助于调试。
-
@JoeSavona 在接力操场上继续点击每个数字,直到你最终向下,你会发现消息 Found children as null。实际上,该消息是错误。如果您检查 graphql 代码并检查层次结构,那么您会发现甚至下面还有更多的孩子。如果您仍然无法跟踪错误,请尝试在 graphql 代码中增加子项,它会失败。这对我来说也是一样的,最初工作到 2 级,但后来又失败了。
-
@JoeSavona 我更新了要点和问题以更好地理解问题。
标签: javascript recursion reactjs relayjs graphql