2016-09-15 6 views
1

私は、アプリケーションのルーティングを処理するためにreact-routerとreact-router-relayを使用しています。 URLパスに渡されたidパラメータにアクセスしようとして問題が発生しています。これを行う正しい方法は何ですか?react-router-relayを使用したクエリで使用するurlパラメータへのアクセス

routes.js

import CreativeQuery from './CreativeQuery'; 

<Route path='/creative' component={CreativeComponent} queries={ViewerQuery}> 
<Route path="/creative/edit/:id" component={CreativeEditComponent} queries={CreativeQuery}/> 

CreativeQuery.js

import Relay from 'react-relay'; 

export default { 
    creative: (Component) => Relay.QL` 
    query { 
     creative(id:$id) { #<--- id from the url param 
     ${Component.getFragment('creative')} 
     } 
    } 
    ` 
}; 

答えて

1

それは、このような単純なする必要があります:

import Relay from 'react-relay'; 

export default { 
    creative:() => Relay.QL`query { creative(id: $id) }` 
}; 

あなたは、あなたのコンポーネントのthis.props経由idにアクセスすることができます。

関連する問題