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

    Route,hashHistory,Route

      IndexRoute即处理页面初始进入时候的组件展示,等路由切换的时候,再根据其他路由规则进行组件的切换展示

    Link

      react-router提供的导航组件,可以直接使用进行路由切换,相当于a标签

    browserHistory

      使用browserHistory的时候,浏览器中导航栏的url就不会出现_k的hash键值对,实际项目中一般用browserHistory。这样正常点击路由切换没有问题,但是重新刷新url就会报找不到路由,这个时候我们在webpack-dev-server启动的时候需要加上参数--history-api-fallback,也可以在webpack配置中设置historyApiFallback为true

    activeStyle,activeClassName

      当前路由被点击处于触发显示状态的时候,我们可以使用activeStyle来给路由设置一些颜色

    路由变量

      常规的路由,路由中的规则是给定的,我们可以尝试使用路由变量,在组件中获取这个路由的变量,并做相应的组件展示

      如<Route path='/(:message)' component={message}/>,在message组件中,可以通过this.props.params.message获取到这个变量的值。

    Route中components参数的高级用法

      Route中components中接收的参数不仅仅只是实际的组件,还可以是对象,通过这样的用法,我们可以更灵活的控制组件的展示。

      如:<IndexRoute components={{header:HomeHeader,body:HomeBody}}/>使用的时候,直接用{props.header},{props.body}获取就可以了。

    使用query获取url中的参数

      可以将url中访问的参数获取,并且应用到组件中。props.location.query.message 拿到?message='value'的值

      还可以在Link组件中设置pathname和query变量

      如:<Link to={{pathname:"/",query:{message:'fengmin'}}}

    rediect重定向

      <Redirect from="/contact" to="/contact-us"/>

    setRouteLeaveHook

    路由钩子函数,处理路由切换时的操作

    componentWillMount(){
      this.context.router.setRouteLeaveHook(
           this.props.route,
           this.routerWillLeave
      )  
    }
    routerWillLeave(nextLocation){
        return `页面即将从home跳转到${nextLocation.pathname}`
    }    

     

  • 相关阅读:
    java,jenkins
    docker compose,link,Odoo
    nginx,docker反向代理
    centos7上安装docker-ce社区版
    Install Rancher server
    docker公司测试环境搭建总结
    ansible+docker
    桥接物理网卡,pipwork指定ip,外网连接,研究salt+docker
    20170605
    20170602
  • 原文地址:https://www.cnblogs.com/web-fengmin/p/6727444.html
Copyright © 2011-2022 走看看