中继生成的突变查询缺less一些字段

我已经设置了一个基本的中继突变来添加一个用户,但是一旦执行它就会返回这个错误/警告:

警告:writeRelayUpdatePayload():包含新创build的边“changedUserEdge”及其“节点”字段的预期响应有效内容。 你忘了更新'RANGE_ADD'突变configuration吗?

我注意到中继遗漏了突变有效负载上的changedUserEdge节点,我不知道为什么。 我看了几个Relay的例子,但是这个变种的构造方式完全一样。

在这个要点中可以find突变,我从中调用它的React组件和生成的查询。

我用graffiti- mongoose来生成我的GraphQL模式。

我不确定我能否提供帮助,您的要求对我来说似乎很好,所以我认为您的问题可能在服务器上。

文档没有明确说明,但是当执行"RANGE_ADD"种类的突变时,Relay期望带有节点和游标的边缘。

通过调用Relay的cursorForObjectInConnection(ArrayOfUsers, User)来生成游标,其中可以通过调用ArrayOfUsers.indexOf(User)在该数组内findArrayOfUsers.indexOf(User)

因此,在我们添加用户的情况下,我们调用API将其插入到数据库中,然后获取所有用户的列表,然后执行此操作以查找function的正确用户

 // mutation > outputFields > changedUserEdge... let selectedUser = allUsers.find(u => u.uuid === newUser.uuid)[0]; let cursor = cursorForObjectInConnection(allUsers, selectedUser); resolve({ node: selectedUser, cursor, }); 

就我个人而言,我发现这是最难实施的,但是一旦你掌握了它,这真的很简单。 希望这可以帮助!