Моя цель состоит в том, чтобы иметь http://mydomain/route1 render React component Component1 и http://mydomain/route2 render Component2. Так, я думал, что это естественно, чтобы написать маршруты, как следующее:
React router - Вложенные маршруты не работают
<Route name="route1" handler={Component1}>
<Route name="route2" handler={Component2} />
</Route>
<DefaultRoute name="home" handler={Home} />
</Route>
http://mydomain/route1 работает, как ожидалось, но http://mydomain/route2 оказывает Component1 вместо этого.
Затем я прочитал this question и изменил маршруты к следующим образом:
<Route name="route1" path="route1" handler={Component1} />
<Route name="route2" path="route1/route2" handler={Component2} />
<DefaultRoute name="home" handler={Home} />
</Route>
Оба http://mydomain/route2 и http://mydomain/route2 работы, как ожидается, в настоящее время. Однако я не понимаю, почему первый не работает, пока он выглядит более логичным и опрятным для меня.
Вложенный синтаксис работает для «/» и «route1», так почему бы не «route1» и «route2»?
Nice, кратком объяснении. Благодаря! – granmoe