Почему не получается добавить в <Switch> Больше одного компонента?

217
16 июня 2018, 02:00

Использую react-router-dom@4.2.2 Начал делать проект при помощи create-react-app Сделал главный Switch, который определяет какую страницу рендерить. Приложение обёрнуто в BrowserRouter, Linkи работают, всё в шоколаде, кроме одного... На одной из страниц есть контент, который отображается по разному. Вот сам код:

<Switch>
    <Route
        exact
        path={`${this.props.match.path}`}
        component={SectionGallery} />
    <Route
        path={`${this.props.match.path}:product`}
        component={Putin} />
</Switch>

Названия роли не играют. Почему-то, когда я использую только 1 роут, то всё работает хорошо, при этом не важно какой и с каким path.

<Switch>
    <Route
        exact
        path={`${this.props.match.path}`}
        component={SectionGallery} />
</Switch>

Сама ошибка: A < Router > may have only one child element, без ссылок на конкретный участок кода. Чего он возмущается, ведь с < Router > всё хорошо...

class App extends Component {
   render() {
      return (
         <Router>
            <main>
               <div className="page">
                   <Page />
                   <SocialLink />
               </div>
            </main>
        </Router>
      )
   }
}

Что я делаю не так?

Answer 1

Нихренашеньки не понял, я просто добавил в import Router, нигде не применяя на странице и оно заработало... Магия вне Хоргвардса, не иначе...

Когда я делал Link и они у меня не работали, я точно так же добавил в import Redirect и они запахали как миленькие... Как это работает?

READ ALSO
Как сделать так, чтобы разные браузеры обрабатывали разный код?

Как сделать так, чтобы разные браузеры обрабатывали разный код?

Существует ли возможность указать в HTML, чтобы определённые браузеры обрабатывали отдельно для них созданный JS/JQuery? И как это сделать?

220
Как отправить фото или документы через ajax

Как отправить фото или документы через ajax

как можно сразу отправить файлы через ajax когда мы чтото закинули в Input type="file", мой скрипт почему то не срабатывают буду признателен за помощь

238
Получить файл из сообщения

Получить файл из сообщения

Как проверить наличие и получить файл из обновления? Пишу на джаве лонг поллинг ботаБиблиотека rubenlagus/TelegramBots

187
Прикрепление файлов в WebView

Прикрепление файлов в WebView

Есть сайт мобильной версии, там в форме есть input для файлаТуда надо прикрепить файл

233