2017-12-21 4 views
0

私はmainというコンポーネントを持っています。これはその中にこれを持っている:リアクタのルータコンポーネントが表示され、すぐに消えて表示されます。

<Router> 
     <div> 
     <ul> 
      <li><Link to="/categories">Category</Link></li> 
      <li><Link to="/basket">Basket</Link></li> 
     </ul> 

     <Route 
      path="/basket" 
      render={() => (
      <Basket 
      /> 
     )} 
     /> 

     <Route 
      path="/categories" 
      render={() => (
      <Categories /> 
     )} 
     /> 
     </div> 
    </Router> 

私は、カテゴリをクリックすると、それはまさにこのですカテゴリーコンポーネント、レンダリング:私は、トレーナーやリュックサックをクリックすると

const Categories =() => (
    <Router> 
    <div> 
     <ul> 
     <li><Link to="/trainers">Trainers</Link></li> 
     <li><Link to="/rucksacks">rucksacks</Link></li> 
     </ul> 

     <Route path="/trainers" component={Trainers} /> 
     <Route path="/rucksacks" component={Rucksacks} /> 
    </div> 
    </Router> 
); 

const Trainers =() => (
    <div> 
    <h2>Trainers</h2> 
    </div> 
); 

const Rucksacks =() => (
    <div> 
    <h2>Rucksacks</h2> 
    </div> 
); 

、H2要素が点滅を画面上で。すなわち即座に消えて現れる。なぜこれは?

私が達成しようとしているのはホームページを持っていて、すべてのカテゴリをレンダリングするカテゴリをクリックしてから、サブカテゴリをクリックすると製品のリストが表示されます。なぜこれがファンキーで、表示/レンダリングが正しく行われていないのか?

答えて

0

アプリケーションには1台のルータしか存在できません。

const Categories =() => (
    <div> 
     <ul> 
     <li><Link to="/categories/trainers">Trainers</Link></li> 
     <li><Link to="/categories/rucksacks">rucksacks</Link></li> 
     </ul> 

     <Switch> 
     <Route path="/categories/trainers" component={Trainers} /> 
     <Route path="/categories/rucksacks" component={Rucksacks} /> 
     </Switch> 
    </div> 
); 
+0

まだ同じ問題を取得...それは、完全なパスを見たいよう –

+0

が見えますので、カテゴリ/トレーナー/::https://github.com/代わりにルーターのスイッチを使用するカテゴリのコンポーネントを変更しますReactTraining/react-router/issues/4428 – brub

+0

いいね!乾杯 –

関連する問題