0
私はFaceBookが提供するreact-relay-starter-kitに続いて、2つのルートを持つ簡単なアプリケーションを作成しました。
しかし、このコンテナのフラグメントにパラメータを渡しながら、あるルートのコンポーネントを他のルートと呼ぶようにしたいと思います。他の言葉で
、私が持っている:
ルータの設定:経路を変更して引数をリレーコンテナに渡す方法は?
Relay.injectNetworkLayer(
new Relay.DefaultNetworkLayer(config.gqlUrl, {options...})
);
ReactDOM.render(
<Router
history={hashHistory}
render={applyRouterMiddleware(useRelay)}
routes={routes}
environment={Relay.Store}>
<Route path="/" component={App}/>
<Route path="/route1" component={Comp1} />
<Route path="/route2" component={Comp2} queries={comp2Query}/>
</Router>,
document.getElementById('root')
);
器Comp1:
export default class Comp1 extends React.Component {
render() {
return (
<div>
<span onClick={()=>{//go to comp2 with val=1}>1</span>
<span onClick={()=>{//go to comp2 with val=2}>2</span>
<span onClick={()=>{//go to comp2 with val=3}>3</span>
</div>
);
}
}
器Comp2:
class Comp2 extends React.Component {
render() {
return (
<div>
{this.props.info.text}
</div>
);
}
}
export default Relay.createContainer(Comp2, {
initialVariables: {
value: //the value set by the Comp1
},
fragments: {
info: (variables) =>{
return Relay.QL`
fragment on News{
text
}
`}}
});
を
私は2番目のルータに値を渡す方法を理解できませんでした。
おかげで、それはこのコードで私のために働い:あなた器Comp2のクラスを作成した後
そして今ここに
詳細情報は
を追加 パス名: '/ home'、 クエリ:{modal:true}、 状態:{maValue:true} }); ' Relay.createContainer'にアクセスできません。渡された値をRelayコンテナにアクセスする方法を知っていますか? – tahayk