4

我正在我的 React 应用程序中尝试 Relay,它默认使用 GraphQL。它看起来像这样(Score是一些 React.js 组件):

Score = Relay.createContainer(Score, {
    fragments: {
        score: () => Relay.QL`
            fragment on Score {
                initials,
                score,
            }
        `,
    },
});

问题是:我可以使用自定义 API 函数将数据返回到片段中吗?像这样:

Score = Relay.createContainer(Score, {
    fragments: {
        score: myCustomFunction(), // It will return a dataset.
    },
});
4

1 回答 1

5

还没有。此 GitHub 问题中正在讨论对使用“本地”数据扩充服务器模式的支持。

与此同时,您有两种选择:

  • 在 GraphQL 服务器上找到分数计算并像访问任何其他字段一样通过模式访问它(请注意,模式中的字段可以是任意计算的产物,因此您可以执行“计算字段”,并且不限于普通数据- 从二级商店取货)。
  • 在客户端上定位数据并通过 GraphQL 之外的侧通道访问它;例如,您可以将它放在 Flux 商店或其他一些辅助模块中。
于 2015-10-20T16:39:02.957 回答