zoukankan      html  css  js  c++  java
  • react-router-dom

    .js路由跳转:

    1.被Route包裹的组件,直接this.props.history.push("/xx");

      在构造函数中

    constructor(props) {
      super(props);
    }
    其他需要跳转的地方this.props.history.push("/xx");

    2.普通组件可通过使用withRouter(组件)再this.props.history.push("/xx")

    import React from "react";
    import {withRouter} from "react-router-dom";
    
    class MyComponent extends React.Component {
      ...
      myFunction() {
        this.props.history.push("/some/Path");
      }
      ...
    }
    export default withRouter(MyComponent);

    常规导入

    import React from 'react'

    import { BrowserRouter as Router,Route,Link} from 'react-router-dom'

    注意BrowserRouter只能有一个孩子,

    switch用于重定向孩子为Route或者redirect

     ---从上向下匹配,只匹配它的第一个孩子

    1.url带参数/参数

    <Route path="/:id">

    参数获取:this.props.match.params.id

    2.带参数跳转该地址

    <Link to={{

    pathname:'/home' 路径名,

    query:''    参数值

    state:''   参数值保存在state中

    }}   

    a.query传参  this.props.location.query.xx 貌似刷新后该参数状态不会保存

    b.state传参  this.props.location.state.xx

    被Route包裹的组件会有location,match,history等属性,通过this.props获取即可

    <Route path='/xx' component={组件}

    若组件中又有子组件,父组件可属性方式将history等传递给子组件,子组件通过this.props获取

    匹配:

    使用 exact 关键字会精确匹配到该路由下,否则则匹配到满足该路由的路由下。

  • 相关阅读:
    leetcode312 戳气球
    leetcode1283 使结果不超过阈值的最小除数
    软件管理相关命令
    win10+Tensorflow2.1+anaconda python3.7安装
    ResNet残差网络(可以解决梯度消失)
    梯度消失&梯度爆炸(Vanishing/exploding gradients)
    高方差和高偏差
    tf.nn.conv1d
    tensorboard
    卷积
  • 原文地址:https://www.cnblogs.com/BlingSun/p/9503992.html
Copyright © 2011-2022 走看看