2017-09-11 10 views
0

私は自分のアプリに反応ルータを実装しました。私は別のURLでレンダリングしている「ページ」(部品)のシリーズを持っている:特定のコンポーネントの初期ルートの作成方法は?

ReactDOM.render(
    <BrowserRouter>  
    <div> 
     <Route path='/Home' component={Home} /> 
     <Route path='/Shop' component={Shop} /> 
     <Route path='/Contact' component={Contact} /> 
    </div> 
    </BrowserRouter>, 
    document.getElementById('root') 
) 

私の問題は、私はホーム・ページが最初のページユーザーであるようにする適切な方法を把握することはできませんということです見る。今すぐ私は手動でそれを表示する私のURLに/Homeを追加する必要があり、それは明らかに好まれていません。

私は、ホームページに移動します/からリダイレクト追加しようとした -

<Redirect from="/" to="/Home" /> 

をしかし、ここで問題は、/以来、すべての単一のURLであるということですので、私が入力したURLが家にリダイレクトします。

もっと明示的にする方法はありますか?/の場合はというものがURLに追加されますか?それとも私の全体的な問題を解決する良い方法がありますか?どんな助けでも大歓迎です!

<Route path='/' exact component={Home} /> 

+0

を、私はあなたが使うことができると思う '<ルートパス=「/」コンポーネント= {HOME} />'私はそれとに走った – FuzzyTree

+0

@FuzzyTree問題は、それがその後、レンダリングしています他のすべてのページでも 'Home'です。なぜならそれらはすべてURLに'/'を持っているからです。 –

+0

私の答えを見てください。 exact = {true}を追加すると、その問題が修正されます。 – zackify

答えて

3

変更

<Route path='/Home' component={Home} /> 

今のホームページでは、正確に/上にあるときにのみ表示されます。

編集:ここではドキュメントを参照してください。https://reacttraining.com/react-router/web/api/Route/exact-bool

+1

ありがとうございました!これは私が必要としていた「正確に」です) –

+0

haha​​問題はありません:) – zackify

関連する問題