欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解React路由傳參方法匯總記錄

 更新時(shí)間:2020年11月29日 11:00:53   作者:樂聞x  
這篇文章主要介紹了詳解React路由傳參方法匯總記錄,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

React中傳參方式有很多,通過路由傳參的方式也是必不可少的一種。

本文記錄項(xiàng)目中會(huì)用到的路由傳參方式: 路由跳轉(zhuǎn)傳參API + 目標(biāo)路由獲取參數(shù)的方式。

一、動(dòng)態(tài)路由

跳轉(zhuǎn)方法

Link

 <Link to={{ pathname: "/user/add/1" }}>跳轉(zhuǎn)新增頁(yè)面</Link>

history.push

 this.props.history.push("/user/add/1");

獲參方法

this.props.match.params

二、路由query顯示參數(shù)

Link跳轉(zhuǎn)

<Link to={{ pathname: "/user/add", query: { id: 1 } }}>
     跳轉(zhuǎn)新增頁(yè)面
 </Link>

history.push

this.props.history.push({
       pathname: "/user/add",
       //參數(shù)
       query: { id: 1 },
      });

獲參方法

this.props.location.query

三、路由state隱式參數(shù)

Link跳轉(zhuǎn)

<Link to={{ pathname: "/user/add", state: { id: 1 } }}>
     跳轉(zhuǎn)新增頁(yè)面
    </Link>

history.push

this.props.history.push({
       pathname: "/user/add",
       state: { id: 1 },
      });

獲參方法

this.props.location.state

代碼DEMO

入口App組件

class App extends React.Component {
 render() {
  return (
   <BrowserRouter>
    <Route path="/user" exact component={User} />
    //動(dòng)態(tài)路由
    <Route path="/user/add/:id?" component={UserAdd} />
    {/* <Redirect to="/user" /> */}
   </BrowserRouter>
  );
 }
}

動(dòng)態(tài)路由Demo

User組件

import React, { Component } from "react";
import { Link } from "react-router-dom";

export default class User extends Component {
 render() {
  return (
   <div>
    <div className="user">User</div>

    {/* <Link to={{ pathname: "/user/add/1" }}>跳轉(zhuǎn)新增頁(yè)面</Link> */}
    <button
     onClick={() => {
      // 1.
      // this.props.history.push("/user/add/1");
      // 2.
      this.props.history.push({
       pathname: "/user/add/1",
      });
     }}
    >
     跳轉(zhuǎn)新增頁(yè)面
    </button>
   </div>
  );
 }
}

UserAdd組件

import React, { Component } from "react";

export default class UserAdd extends Component {
 render() {
  console.log("this.props.match.params:", this.props.match.params);
  return <div>UserAdd</div>;
 }
}

image-20201127171632005 

路由query顯示參數(shù)Demo

User組件

import React, { Component } from "react";
import { Link } from "react-router-dom";

export default class User extends Component {
 render() {
  return (
   <div>
    <div className="user">User</div>

    <Link to={{ pathname: "/user/add", query: { id: 1 } }}>
     跳轉(zhuǎn)新增頁(yè)面
    </Link>
    <button
     onClick={() => {
      this.props.history.push({
       pathname: "/user/add",
       query: { id: 1 },
      });
     }}
    >
     跳轉(zhuǎn)新增頁(yè)面
    </button>
   </div>
  );
 }
}

image-20201127173247403 

路由state隱式參數(shù)Demo

User組件

import React, { Component } from "react";
import { Link } from "react-router-dom";

export default class User extends Component {
 render() {
  return (
   <div>
    <div className="user">User</div>

    <Link to={{ pathname: "/user/add", state: { id: 1 } }}>
     跳轉(zhuǎn)新增頁(yè)面
    </Link>
    <button
     onClick={() => {
      this.props.history.push({
       pathname: "/user/add",
       state: { id: 1 },
      });
     }}
    >
     跳轉(zhuǎn)新增頁(yè)面
    </button>
   </div>
  );
 }
}

image-20201127173923810

到此這篇關(guān)于詳解React路由傳參方法匯總記錄的文章就介紹到這了,更多相關(guān)React路由傳參內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用React手寫一個(gè)對(duì)話框或模態(tài)框的方法示例

    使用React手寫一個(gè)對(duì)話框或模態(tài)框的方法示例

    這篇文章主要介紹了使用React手寫一個(gè)對(duì)話框或模態(tài)框的方法示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • React Hook的使用示例

    React Hook的使用示例

    這篇文章主要介紹了React Hook的使用示例,幫助大家更好的理解和學(xué)習(xí)使用React,感興趣的朋友可以了解下
    2021-04-04
  • 詳解React的組件通訊

    詳解React的組件通訊

    這篇文章主要介紹了詳解react組件通訊方式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-11-11
  • React?數(shù)據(jù)共享useContext的實(shí)現(xiàn)

    React?數(shù)據(jù)共享useContext的實(shí)現(xiàn)

    本文主要介紹了React?數(shù)據(jù)共享useContext的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • React不使用requestIdleCallback實(shí)現(xiàn)調(diào)度原理解析

    React不使用requestIdleCallback實(shí)現(xiàn)調(diào)度原理解析

    這篇文章主要為大家介紹了React不使用requestIdleCallback實(shí)現(xiàn)調(diào)度原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • react:swr接口緩存案例代碼

    react:swr接口緩存案例代碼

    useSWR 是一個(gè) React Hooks,是 HTTP 緩存庫(kù) SWR 的核心方法之一,SWR 是一個(gè)輕量級(jí)的 React Hooks 庫(kù),通過自動(dòng)緩存數(shù)據(jù)來實(shí)現(xiàn) React 的數(shù)據(jù)獲取,本文給大家介紹react:swr接口緩存案例詳解,感興趣的朋友一起看看吧
    2023-11-11
  • React在Dva項(xiàng)目中創(chuàng)建并引用頁(yè)面局部組件的方式

    React在Dva項(xiàng)目中創(chuàng)建并引用頁(yè)面局部組件的方式

    這篇文章主要介紹了React在Dva項(xiàng)目中創(chuàng)建并引用頁(yè)面局部組件的方式,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • react的hooks的用法詳解

    react的hooks的用法詳解

    這篇文章主要介紹了react的hooks的用法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • React?hook實(shí)現(xiàn)簡(jiǎn)單的websocket封裝方式

    React?hook實(shí)現(xiàn)簡(jiǎn)單的websocket封裝方式

    這篇文章主要介紹了React?hook實(shí)現(xiàn)簡(jiǎn)單的websocket封裝方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • React學(xué)習(xí)之事件綁定的幾種方法對(duì)比

    React學(xué)習(xí)之事件綁定的幾種方法對(duì)比

    這篇文章主要給大家介紹了關(guān)于React學(xué)習(xí)之事件綁定的幾種方法對(duì)比,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-09-09

最新評(píng)論