使用 React Relay 时是否需要始终拉取 id 字段

Do I need to always pull the id field when using react relay

我很好奇在对中继图 QL 服务器进行查询时是否必须始终包含 id 字段?

例如:

users_connection {
    edges {
      node {
        id
        userId
        firstName
      }
    }
}

我有时在循环结果时使用 id 字段作为组件键,但一般来说我不使用它。中继是否在客户端使用它来执行缓存?

我已经测试过从我的查询中删除它并且没有注意到我的应用程序有什么不同。

relay-compiler 会自动将其添加到具有 id 字段的任何类型,即使未明确请求也是如此。但是如果你真的在自己的代码中使用它,你仍然需要添加它。