react-withRouter 用法

简介: react-withRouter 用法

1. 前言

  1. react-router-dom 5x版本 里面 还是有 withRouter
  2. 简单说下用法

2. withRouter 功能

  1. 把不是通过路由切换过来的组件中,将react-router 的 history、location、match 三个对象传入props对象上
  2. 用法也非常简单 就是把组件 作为withRouter() 的从参数就行

3. 相关代码

import React from "react";
import { withRouter } from "react-router-dom";
 function PlayCom(props) {
  console.log("子组件-props", props);
  return (
    <div className="box">
      <div className="my-title">子组件</div>
      <button onClick={() => {
         props.history.push("/");
      }}> 跳转</button>
    </div>
  );
}
//  正常导出 不具备 路由/BOM 功能
// export default PlayCom;
// 高阶函数 参数是组件的函数
//  高阶组件 让我们 的组件 具备 更多的功能
// withRouter 自动注入 BOM 相关 API
export default withRouter(PlayCom);
//子组件默认 不具备 路由相关的 API
//  route 配置 的时候
// 会自动给 路由页面 注入 相关 API

5. 延伸一个路由传参方式

  1. 相关代码
  2. 也可以在路由配置的时候 传递参数

{/*  自己注入内容 / 扩展功能 高阶函数  
          // 形参默认就是路由对象/BOM
          / r  routeProps
          */}
            <Route  exact path="/blog/ios"  render={(routeProps)=>{
              // 父子组件传参
              // return <IosPage name={r}/>
              return <IosPage {...routeProps}  salary="18k" />
            }} />
  1. 如果不传递 从传递routeProps/形参
  2. 当前这个页面 其实也不具备 history、location、match 三个对象

参考资料


初心

我所有的文章都只是基于入门,初步的了解;是自己的知识体系梳理,如有错误,道友们一起沟通交流;
如果能帮助到有缘人,非常的荣幸,一切为了部落的崛起;
共勉
相关文章
|
8月前
|
移动开发 前端开发 API
React Router的用法。
React Router的用法。
196 56
|
缓存 JavaScript 前端开发
react.js高级用法
【8月更文挑战第27天】react.js高级用法
199 2
|
Web App开发 监控 前端开发
React 性能监测工具大揭秘!Chrome DevTools 高级用法来袭,让你的 React 应用性能飙升!
【8月更文挑战第31天】在前端开发中,React 框架虽简化了高效、交互性强的用户界面构建,但应用复杂性增加亦可能引发性能问题。此时,Chrome DevTools 凭其性能面板成为了优化应用性能的重要工具,能帮助开发者记录与分析加载时间、渲染及脚本执行等性能指标,定位并解决性能瓶颈。同时,其 React 开发者扩展工具允许实时监控组件状态变化,进一步提升性能。结合运用这些功能,将有助于打造流畅的用户体验。
429 0
|
前端开发 UED
React 防抖与节流用法
React 防抖与节流用法
416 0
|
前端开发 JavaScript
react中refs的作用是什么?有几种用法?
react中refs的作用是什么?有几种用法?
|
存储 前端开发 JavaScript
[React] useRef用法和特性
[React] useRef用法和特性
201 0
|
前端开发 JavaScript
React Hooks 用法详解3
React Hooks 用法详解
|
前端开发 JavaScript API
React Hooks 用法详解2
React Hooks 用法详解
|
缓存 前端开发 JavaScript
React Hooks 用法详解1
React Hooks 用法详解
|
存储 缓存 前端开发
React.memo() 和 useMemo() 的用法是什么,有哪些区别?
React.memo() 和 useMemo() 的用法是什么,有哪些区别?
331 0