使用 NODE_DELETE 而不重新获取数据

Using NODE_DELETE without refetching data

使用 NODE_DELETE 需要父级,实际上 return 连接的父级:

不幸的是,使用此重新获取 ALL 我的嵌套项目,这对我的用例来说是不可接受的。

  fragment on deleteItemNested @relay(pattern: true) {
    id
    ok
    item {
      nested {
        edges {
          node { id }
        }
      }
    }
    clientMutationId
  }

有没有办法在不重新获取所有数据的情况下从 connection/list 中删除项目?尝试不获取嵌套中的边缘会导致嵌套只是一个空对象。

所有嵌套项都被重新提取,因为在查询中使用了 @relay(pattern: true)。这使得查询与已包含嵌套字段的跟踪查询相匹配。查看 steveluscher to the question 的出色答案。

mutation documentationNODE_DELETE的代码示例值得一看