React Router的选用

83 阅读1分钟

路由的分类

<BrowserRouter>

适用于:Web浏览器的大多数场景

URL形式:www.xxx.com/{route}/{pa…

Location:存储于浏览器地址栏中,以URL形式呈现

History:使用浏览器内置History Stack存储

<HashRouter>

适用于:在Web浏览器中不应或不能将URL发送到服务器时

URL形式:www.xxx.com/#/{route}/{…

Location:存储于当前 URL 的Hash部分中

History:使用浏览器内置History Stack存储

<MemoryRouter>

适用于:非浏览器环境或组件开发

URL形式:www.xxx.com/

Location:存储于内部数组中

History:使用内部History存储

适用场景

Pick(建议使用)

BrowserRouter: 希望URL记录状态,方便下次直接访问

MemoryRouter: 多个子服务共享一个URL,子服务跳转不希望URL变化

Ban(避免使用)

HashRouter: URL的Hash部分可能会与功能起冲突,如基于锚点的页内跳转