Reactjs 在React中获取整个GraphQL树的最佳方法是什么?
假设我有以下GraphQL模式:Reactjs 在React中获取整个GraphQL树的最佳方法是什么?,reactjs,graphql,relayjs,Reactjs,Graphql,Relayjs,假设我有以下GraphQL模式: type Cinema { name: String! rooms: [Room]! } type Room { name: String! seats: [Seat]! } type Seat { number: Int! booked: Boolean! } 在前视图中,我想在左侧显示一个菜单列表,其中包含折叠的导航,如: 电影名称 房间名称1 座位1(已预订) 座位2(已预订) 房间名
type Cinema {
name: String!
rooms: [Room]!
}
type Room {
name: String!
seats: [Seat]!
}
type Seat {
number: Int!
booked: Boolean!
}
在前视图中,我想在左侧显示一个菜单列表,其中包含折叠的导航,如:
- 电影名称
- 房间名称1
- 座位1(已预订)
- 座位2(已预订)
- 房间名称2
- 座位1(已预订)
- 座位2(已预订)
- 房间名称1
<Page>
<Menu />
<Summary />
<Page />
是的,可以用这个模式来处理这个问题强>
我是否应该根据我的组件对请求进行分段,重新蚀刻,直到我拥有所有数据并将结果保存在专用状态以发送到摘要组件
不,不可能用此模式处理此问题强>
我是否应该只发出一个不分页的请求,并手动将道具发送到我的组件
注1:我使用Relay Modern作为GraphQL客户端,但欢迎所有建议
注2:这个例子比我的实际用例简单。我有许多嵌套分页,我的“摘要”组件在初始化时需要所有数据。根据上面的描述,摘要视图只是所选房间和电影院座位的不同表示形式。所以对电影院>房间>座位的查询应该可以,不是吗?如果是这样的话,我就不清楚为什么摘要组件需要所有的数据。我想你的用例不仅仅是这个类比。可以根据原始数据预先计算摘要,以避免在每次渲染时进行代价高昂的重新计算。例如,房间座椅为简单矩阵,可表示为数字(每个座椅一位)。这将是一个比获取原始座位数据便宜得多的查询。是的,在我的实际用例中,我必须处理许多嵌套分页。如果我想尊重中继方式,我必须根据我的组件将我的请求分段。但是,我不知道如何检索以中继方式操作我的
Summary
组件所需的所有数据。