【发布时间】:2017-04-02 11:42:31
【问题描述】:
我试图在一个表中多次呈现一个组件(即每个表行一个组件实例)。组件需要设置一个 Relay 变量来决定如何渲染组件的内容。
我通过在组件的 componentWillMount 生命周期事件中调用 this.props.relay.setVariables 来设置此变量。在我的特定情况下,每个组件最终都需要来自服务器的相同数据集,因此我希望第一个调用 this.props.relay.setVariables 的组件会导致新的获取来自服务器,但表中的每个后续组件将简单地使用从第一个组件获取的结果,因为生成的查询对于表中的每个组件都是完全相同的。
但是,实际发生的情况是对表中的每个组件都进行了一次新的提取,这对性能来说很糟糕。有没有办法告诉 Relay 重用原始提取?我认为它应该通过缓存查询来自动执行此操作。
仅供参考...查询正在通过 node 接口,并且片段类型是接口图类型。
【问题讨论】: