继承现代+ GraphQL + found-relay - 在子级获取片段之前进行转换

时间:2017-09-10 14:52:20

标签: routing relayjs relaymodern

我想构建一个简单的路由,我的Table组件接收片段 Table_table

routing.js

const tableQuery = graphql`
    query routesTableQuery($tableId: String){
    store {
        table(id: $tableId){
            name
            stake
        }
    }}
`

<Route
    path="table"
    Component={Table}
    prepareVariables={params => ({tableId: '59abf1a01710ba3b74718220'})}
    query={tableQuery}
/>

Table.js容器

export default createFragmentContainer(
Table,
graphql`
    fragment Table_table on Table {
        name
        stake
    }
)`

但是我没有在组件中接收 table 道具,而是接收商店(并且表道具为空)。此外,如果我设置 ... Table_table 而不是查询中的特定字段,我收到错误“预期道具table将提供给Relay(Table),但得到{ {1}}“有什么想法?

1 个答案:

答案 0 :(得分:0)

我通过在路由中使用呈现属性来管理它。

render={({Component, props})=>{
    return <Component table={props.store.table} />
}}