You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用React Router v6实现客户端自动重定向?

React Router v6 重定向实现方法

React Router v6 版本已完全移除 v5 提供的 <Redirect> 组件,直接沿用v5的重定向写法会触发如下报错:
export 'Redirect' (imported as 'Redirect') was not found in 'react-router-dom'

v6版本的重定向需要使用内置的Navigate组件实现,和v5写法的对应修改点如下:

  • 导入时将Redirect替换为Navigate,同时注意v5的<Switch>组件在v6中已更名为<Routes>,需要同步替换
  • 原<Redirect to="目标路径" />的位置,替换为<Navigate to="目标路径" replace />,添加replace属性会替换当前路由栈记录,和v5中Redirect的默认行为一致,避免用户点击浏览器返回按钮时再次触发重定向

修改后的可运行代码示例:

import React from 'react';
import { Routes, Route, Navigate } from 'react-router-dom';
// 其他业务组件导入

function App() {
  // 其他业务逻辑

  return (
    <div>
      <Header />
      <Routes>
        <Route path="/" element={<HomePage />} />
        <Route path="/project" element={<Navigate to="/project/list" replace />} />
        <Route path="/project/list" element={<ProjectListPage />} />
      </Routes>
      <Footer />
    </div>
  );
}

export default App;

注意:当前搜索引擎搜索react router redirect返回的置顶结果多为v5版本过时文档,API和v6完全不兼容,配置时不要直接参考v5文档的写法。

内容的提问来源于stack exchange,提问作者Paul Smith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 17:24:20