【发布时间】:2021-03-08 17:13:29
【问题描述】:
我的父组件以嵌套片段结束,如下所示:
query MyAppQuery(
$id
$a
$b
$c
) {
viewer {
...App_viewer
...ComponentA_viewer @include(if: $a)
...ComponentB_viewer @include(if: $b)
...ComponentC_viewer @include(if: $c)
}
allEmployees: allUsers(userType: "1") {
...ComponentA_allEmployees @include(if: $a)
...ComponentB_allEmployees @include(if: $b)
...ComponentC_allEmployees @include(if: $c)
}
};
如果我不包含所有这些子片段但所有这些子片段的数据相同,则中继失败,必须在我的所有需要登录用户的子组件上声明视图片段似乎很愚蠢。
我怎样才能在我的应用程序顶部请求这段数据并将其提供给子组件,而不必包含所有这些片段。
这开始感觉像是反向道具钻探,我必须在我的应用程序的下端声明一个片段并将其传递到链上。
与 allEmployees 相同。这是我应该只获取一次并通过上下文传递或访问的相同数据,但我必须传递所有这些愚蠢的片段或转发抱怨。
【问题讨论】:
标签: javascript graphql relayjs relay react-relay