bugfix> javascript > 投稿

基本的に、ルートを切り替えるnavbarがあります。ページがロードされると、デフォルトで/ homeに移動しますが、実際には、提供されているAppコンポーネントはレンダリングされません。これを表示するには、/ homeに移動するボタンをクリックする必要があります。

Reduxでreact-router-domを使用しています。

これが私のBrowserRouterです。

<Provider store = {store}>
    <BrowserRouter>
      <div>
        <Header />
        <Route exact path = "/home" component={App}> </Route>
        <Switch>
          <Route  path = "/about" render = {() => <AboutUs />}></Route>
          <Route  path = "/contact" render = {() => <Contact />}></Route>
          <Route  path = "/services" render = {() => <Services />}></Route>
        </Switch>
      </div>
    </BrowserRouter>
  </Provider>

何かアドバイス?

回答 2 件
  • デフォルトルートは / です   /home ではありません 。 リダイレクトを設定する必要があります。

    <Route exact path="/" render={() => ( <Route exact path="/home" component={App} /> )} />

  • あなたの /home を入れて   Switch のルート  他のすべてのルートで:

    <Provider store = {store}>
        <BrowserRouter>
          <div>
            <Header />
            <Switch>
              <Route exact path = "/home" component={App}> </Route>
              <Route  path = "/about" render = {() => <AboutUs />}></Route>
              <Route  path = "/contact" render = {() => <Contact />}></Route>
              <Route  path = "/services" render = {() => <Services />}></Route>
            </Switch>
          </div>
        </BrowserRouter>
      </Provider>
    
    

あなたの答え