はこれまで、プロパティはパラメータを経由して別のコンポーネントから渡される方法についての私の知識の程度は反応ルータはどのように小道具を介して他のコンポーネントにパラメータを渡すのですか?
//開始以下のとおりである:私の知識の程度は中topic
をいくつかの状態変数が存在すると仮定し
と呼ばれますA.jsx。 私は、その後に呼び出さ
module.exports = React.createClass({
render: function() {
return <div><h2>Today's topic is {this.props.params}!</h2></div>
}
})
ようなものは、「今日の話題をレンダリングします行うことができます私はB.jsxにこれを伝承したいので、私はB.jsxで、次の
B = require('./B.jsx')
getInitialState: function() {return {topic: "Weather"}}
<B params = {this.state.topic}>
を行います天気です! "
//エンド:
module.exports = React.createClass({
render: function() {
return <div><h2>I am a topic with ID {this.props.params.id}</h2></div>
}
})
ルート:さて、私は次のコードで反応し、ルータ上のチュートリアルをつもりだ私の知識の範囲
は
topic.jsxスニペット.jsxの:
var Topic = require('./components/topic');
module.exports = (
<Router history={new HashHistory}>
<Route path="/" component={Main}>
<Route path = "topics/:id" component={Topic}></Route>
</Route>
</Router>
)
header.jsx:
renderTopics: function() {
return this.state.topics.map(function(topic) {
return <li key = {topic.id} onClick={this.handleItemClick}>
<Link to={"topics/" + topic.id}>{topic.name}</Link>
</li>
})
}
this.state.topics
は、imgur APIからRefluxを使用して作成されたトピックのリストです。
私の質問はです:どのようなメカニズムによってparams
はtopic.jsxためprops
に渡されますか?コードのどこにも、私の知識の範囲、すなわち上記のセクションで表現されたイディオムがあります。 routes.jsxまたはheader.jsxには<Topic params = {this.state.topics} />
がありません。 full repo hereへのリンクReact-router docsによると、paramsは "parsed out of the original URL's pathname"です。これは私と共鳴しませんでした。
この回答に感謝します。私はいつもそんなもののためにボンネットの下で掘ることについてどうか不思議です。これは経験であるのですか、それともドキュメントで見つけましたか?もしそうなら、正確な場所を教えてください。 – thetrystero
私はちょうど https://github.com/rackt/react-router/tree/master/modules –
で実装を掘り下げましたが、そのURL上で私のすべてのリンクとスクリプトは404になりました。助けてください – Anil