react的withRouter高阶组件:

withRouter的作用就是, 如果我们某个东西不是一个Router, 但是我们要依靠它去跳转一个页面, 比如点击页面的logo, 返回首页, 这时候就可以使用withRouter来做.

在 React Router 中,withRouter 是一个函数,用于与路由相关的组件。它接受一个组件作为参数,并返回一个新的增强过的组件。

这个增强过的组件可以访问到 React Router 提供的路由对象的属性和方法。

通常,当一个组件位于路由体系之外,例如在嵌套组件中或作为子组件传递时,

它可能无法直接访问路由对象(如history、location和match)。这时,可以使用 withRouter 将这个组件包装起来,使它能够通过 props 获取到路由对象。

复制代码
import React from 'react';
import { withRouter } from 'react-router-dom';

const MyComponent = ({ history, location, match }) => {
    // 可以通过 props 获取路由对象的属性和方法
    console.log(history, location, match);

    return <div>这是一个使用 withRouter 的组件</div>;
};
相关推荐
努力往上爬de蜗牛34 分钟前
react native真机调试
javascript·react native·react.js
李@十一₂⁰2 小时前
HTML 特殊字体符号
前端·html
y***86692 小时前
TypeScript在Electron应用中的使用
javascript·typescript·electron
小奶包他干奶奶4 小时前
Webpack学习——Loader(文件转换器)
前端·学习·webpack
zy happy4 小时前
若依 vue3 报错:找不到模块“@/api/xxxx/xxxxx”或其相应的类型声明。。Vue 3 can not find mod
前端·javascript·vue.js
潘小安4 小时前
Git Worktree + Claude Code:让你的开发效率翻倍的秘密武器
前端
meichaoWen5 小时前
【Vue3】vue3的全面学习(一)
前端·javascript·学习
小猪努力学前端5 小时前
在 React + React Router v7 SSR 项目里做多端适配,我踩的两个坑
前端·react.js
weixin79893765432...5 小时前
Electron + React + Vite 实践
react.js·electron·vite
q***d1735 小时前
React桌面应用开发
前端·react.js·前端框架