Точный и строгий в реакции-маршрутизаторе

React.js

предисловие

Настраивать каждый разreactМаршрутизация рассмотрит, должна ли она давать<Route>компоненты плюсexactилиstrict. Следующие девушки перечислят, какие сцены нужно добавить, а какие нет, так, как они считают более ясным.

Случай в этой статье в основном основан на реакции-маршрутизаторе v4+, Версия v5 напрямую перескочила на эту большую версию из-за проблемы зависимости от версии при ее выпуске.

exact

exactПо умолчанию false.Если вы True, вам нужно совпадать с тем же временем, но если есть косая черта, оно может совпадать. Если родительский маршрут добавленexact, он не может совпадать с подмаршрутом, рекомендуется добавить его в подмаршрутexact,Следующим образом

//父路由
<Switch>
    <Route path="/a" component={ComponentA} />
</Switch>
//子路由,tuanDetail组件里
<Switch>
        <Route path="/a/b" exact component={ComponentB}/>
</Switch>

strict

strictЗначение по умолчанию — false.Если это правда, после маршрута стоит косая черта, а в URL-адресе нет косой черты, что не совпадает.

кейс

image.png

Суммировать

Если подмаршрута нет, рекомендуется его добавитьexactЕсли есть дочерний маршрут, рекомендуется добавить его в подмаршрут.exact, родительский маршрут не добавляется; а такжеstrictИменно для того, стоит ли косая черта, и ее вообще можно игнорировать и не настраивать.

другие ссылки

Оригинальный адрес:Рао Энхуи.GitHub.IO/react/2019/… реагировать-обучение.com/реагировать-маршрут… react-training.com/blog/react-…

Happy coding .. :)