class ChildComponent extends React.Component {
render() {
const {hello} = this.props.greetings;
return
{hello}
;
}
}
const ChildContainer = Relay.createContainer(ChildComponent, {
initialVariables: {
name: 'A',
},
fragments: {
greetings: () => Relay.QL`
fragment on Greetings {
hello(name: $name),
}
`,
}
});
class ParentComponent extends React.Component {
render() {
// *** have to pass `name` prop here ***
this.props.relay.setVariables({
name: "Name",
});
return (
);
}
}
const ParentContainer = Relay.createContainer(ParentComponent, {
initialVariables: {
name: 'C',
},
fragments: {
greetings: ({name}) => Relay.QL`
fragment on Greetings {
${ChildContainer.getFragment('greetings', {name})},
}
`,
}
});
class Route extends Relay.Route {
static routeName = 'Hello';
static queries = {
greetings: () => Relay.QL`
query GreetingsQuery {
greetings,
}
`,
};
}
ReactDOM.render(
,
mountNode
);