当前位置:首页 > React

react如何获取路由

2026-03-30 20:44:01React

获取当前路由路径

在React中获取当前路由路径可以通过react-router-dom库提供的useLocation钩子。useLocation返回的对象中包含pathname属性,即当前路由路径。

import { useLocation } from 'react-router-dom';

function MyComponent() {
  const location = useLocation();
  console.log(location.pathname); // 输出当前路由路径
  return <div>Current path: {location.pathname}</div>;
}

获取路由参数

对于动态路由参数(如/user/:id),可以使用useParams钩子获取。useParams返回一个对象,包含所有动态路由参数键值对。

import { useParams } from 'react-router-dom';

function UserProfile() {
  const params = useParams();
  console.log(params.id); // 获取动态路由中的id参数
  return <div>User ID: {params.id}</div>;
}

获取查询参数

获取URL中的查询参数(如?name=test)可以通过解析location.search实现。推荐使用URLSearchParamsAPI或第三方库如query-string

import { useLocation } from 'react-router-dom';

function SearchPage() {
  const location = useLocation();
  const queryParams = new URLSearchParams(location.search);
  const name = queryParams.get('name');
  return <div>Search name: {name}</div>;
}

编程式导航

使用useNavigate钩子可以获取导航函数,用于编程式路由跳转。navigate函数支持路径字符串或配置对象形式。

import { useNavigate } from 'react-router-dom';

function NavigateButton() {
  const navigate = useNavigate();
  return (
    <button onClick={() => navigate('/new-path')}>
      Go to new path
    </button>
  );
}

获取路由匹配信息

useMatch钩子可以检查当前URL是否匹配给定路径模式。返回匹配信息对象或null。

react如何获取路由

import { useMatch } from 'react-router-dom';

function CheckRoute() {
  const match = useMatch('/dashboard/*');
  return match ? <div>Dashboard route</div> : <div>Other route</div>;
}

标签: 路由react
分享给朋友:

相关文章

电脑如何安装react

电脑如何安装react

安装 Node.js 和 npm React 依赖于 Node.js 和 npm(Node Package Manager)。从 Node.js 官网下载并安装最新稳定版本,安装完成后会自动包含 np…

vue路由实现

vue路由实现

Vue 路由实现方法 安装 Vue Router 在项目中安装 Vue Router 依赖包: npm install vue-router 配置路由 在 src 目录下创建 router/inde…

react 如何运行

react 如何运行

运行 React 项目的步骤 安装 Node.js 确保系统已安装 Node.js(建议版本 16+),可通过官网下载并安装。安装后验证版本: node -v npm -v 创建 React 项目…

react native如何

react native如何

React Native 基础知识 React Native 是一个由 Facebook 开发的框架,用于使用 JavaScript 和 React 构建跨平台移动应用。它允许开发者编写一次代码,同时…

Vue中实现路由

Vue中实现路由

Vue 路由的实现方法 在 Vue 中实现路由通常使用 Vue Router 库。以下是具体的实现步骤: 安装 Vue Router 通过 npm 或 yarn 安装 Vue Router: n…

react如何使用redux

react如何使用redux

使用 Redux 在 React 中的应用 Redux 是一个状态管理库,通常与 React 结合使用以管理全局状态。以下是具体实现步骤: 安装依赖 确保项目中已安装 redux 和 react-r…