当前位置:首页 > React

react route如何传参数

2026-03-10 14:17:48React

路由参数传递方式

在React Router中传递参数主要通过以下三种方式实现:

react route如何传参数

URL参数(动态路由)

通过冒号:在路由路径中定义参数,组件通过useParams钩子获取:

react route如何传参数

// 路由配置
<Route path="/user/:id" element={<UserPage />} />

// 组件内获取
import { useParams } from 'react-router-dom';
function UserPage() {
  const { id } = useParams();
  return <div>User ID: {id}</div>;
}

查询参数(Query String)

使用URLSearchParams或第三方库处理查询字符串:

// 跳转时传递
navigate(`/search?keyword=${value}&page=1`);

// 组件内获取
import { useSearchParams } from 'react-router-dom';
function SearchPage() {
  const [searchParams] = useSearchParams();
  const keyword = searchParams.get('keyword');
  const page = searchParams.get('page');
}

状态参数(State Object)

通过navigate的state选项传递对象,适合敏感或复杂数据:

// 跳转时传递
navigate('/profile', {
  state: { 
    userToken: 'abc123',
    fromDashboard: true 
  }
});

// 组件内获取
import { useLocation } from 'react-router-dom';
function ProfilePage() {
  const { state } = useLocation();
  const token = state?.userToken;
}

参数类型选择建议

  • 公开可分享的链接使用URL参数或查询参数
  • 临时数据或敏感信息使用状态参数
  • 分页/筛选场景适合查询参数
  • 详情页ID适合URL参数

所有方法获取的参数都会在页面刷新后保留(state参数除外),可根据具体场景组合使用。

标签: 参数react
分享给朋友:

相关文章

react如何开发组件

react如何开发组件

React 组件开发基础 React 组件分为函数组件和类组件两种形式。函数组件是现代 React 开发的主流方式,结合 Hooks 可以实现完整功能。 函数组件示例: function Gree…

react如何开发

react如何开发

React 开发基础步骤 安装 Node.js 和 npm/yarn 确保系统已安装 Node.js(包含 npm)或 Yarn。React 项目依赖这些工具管理包和运行脚本。官方推荐使用 Node.…

react如何分

react如何分

React 分页实现方法 在 React 中实现分页功能可以通过多种方式完成,以下是几种常见的方法: 使用状态管理分页数据 在组件内部维护当前页码和每页数据量的状态,通过计算切片数据实现分页。…

react如何同步修改

react如何同步修改

同步修改状态的常见方法 在React中同步修改状态通常涉及使用useState或useReducer钩子,结合React的批处理机制确保状态更新的一致性。以下是几种典型场景的解决方案: 直接使用us…

react如何切换class

react如何切换class

动态切换 React 组件的类名 在 React 中动态切换类名可以通过多种方式实现,以下是常见的几种方法: 使用模板字符串和状态管理 function MyComponent() {…

react参数如何传递

react参数如何传递

参数传递方式 React 中参数传递主要有以下几种方式: Props 传递 父组件通过属性(props)向子组件传递数据。子组件通过 props 对象接收参数。 // 父组件 <Chil…