React-Router 的 Hooks

React-Router 5.1引入了useHistory, useLocation, useParams和useRouteMatch四个Hooks。useParams简化了获取路由参数的方式,无需再写冗余代码。useLocation提供当前路由信息,常与useEffect结合使用。useHistory允许返回上一页面。useRouteMatch则用于在无需实际呈现的情况下获取匹配数据。这些Hooks使得React应用中的路由管理更加便捷。" 96904494,8584932,自定义View实现雷达图与刻度值绘制,"['Android开发', '自定义组件', '图形绘制']
摘要由CSDN通过智能技术生成

5.1版本的React-Router,带来了useHistory,useLocation,useParams,useRouteMatch四个钩子函数。

useParams

这个函数什么用呢?首先我们看一个不适用hooks读取路由params的方法:

import React from "react";
import ReactDOM from "react-dom";
import { BrowserRouter as Router, Route, Switch } from "react-router-dom";

function BlogPost({ match }) {
  let { slug } = match.params;
  return <div>{slug}</div>;
}

ReactDOM.render(
  <Router>
    <div>
      <Switch>
        <Route path="/blog/:slug" component={BlogPost} />
      </Switch>
    </div>
  </Router>,
  document.getElementById("root")
);

可以看到,我们必须使用match来获取路由中的params

那么如果使用useParams怎么做呢&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清雅白鹿记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值