• 【react router路由】<Router> <Siwtch> <Route>标签


    博客

    https://www.jianshu.com/p/ed5e56994f13?from=timeline

    文档

    http://react-guide.github.io/react-router-cn/docs/API.html

    https://react-guide.github.io/react-router-cn/

    react-router-dom路由,我们要理解三个概念,Router、Route和Link。

    1、Router
    Router我们可以把它看做是react路由的一个路由外层盒子,它里面的内容就是我们单页面应用的路由以及路由组件

    import { BrowserRouter as Router } from "react-router-dom";
    class Main extends Component{
        render(){
            return(
            <Router>
                <div>
                    //otherCoding
                </div>
            </Router>
            )
        }
    }

    2、Link
    Link是react路由中的点击切换到哪一个组件的链接,(这里之所以不说是页面,而是说组件,因为切换到另一个界面只是展示效果,react的本质还是一个单页面应用-single page application)。

    import { BrowserRouter as Router, Link} from "react-router-dom";
    class Main extends Component{
        render(){
            return(
            <Router>
                <div>
                    <ul>
                        <li><link to='/'>首页</Link></li>
                        <li><link to='/other'>其他页</Link></li>
                    </ul>
                </div>
            </Router>
            )
        }
    }

    特别说明:第一、Router下面只能包含一个盒子标签,类似这里的div。
    第二、Link代表一个链接,在html界面中会解析成a标签。作为一个链接,必须有一个to属性,代表链接地址。这个链接地址是一个相对路径。
    第三、Route,是下面要说的组件,有一个path属性和一个组件属性(可以是component、render等等)。

    3、Route
    Route代表了你的路由界面,path代表路径,component代表路径所对应的界面。

    import React,{ Component } from "react";
    
    import { render } from "react-dom";
    
    import { BrowserRouter as Router, Route, Link } from "react-router-dom";
    
    class Home extends Component{
        render(){
            return (
                <div>this a Home page</div>
            )
        }
    }
    class Other extends Component{
        render(){
            return (
                <div>this a Other page</div>
            )
        }
    }
    class Main extends Component{
    
        render(){
            return (
                <Router>
                    <div>
                        <ul>
                            <li><Link to="/home">首页</Link></li>
                            <li><Link to="/other">其他页</Link></li>
                        </ul>
                        <Route path="/home" component={Home}/>
                        <Route path="/other" component={Other}/>
                    </div>
                </Router>
            )
        }
    }
    
    render(<Main />,document.getElementById("root"));


    ---------------------
    作者:mapbar_front
    来源:CSDN
    原文:https://blog.csdn.net/mapbar_front/article/details/72811425
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    HTML新解
    关于EF4.1更新数据后的显示问题PagedList
    SQL2008中的XML字段操作,与命名空间相关
    64位Win7+iis7下发布MVC3 web项目
    蓝屏、异常关机操成的 未能加载文件或程序集“....”或它的某一个依赖项。参数错误。
    FreeWriting_12
    FreeWriting_13
    【转】ACE的构建(VC++6.0环境)
    Freewriting_10
    FreeWriting_16
  • 原文地址:https://www.cnblogs.com/zealousness/p/10518034.html
Copyright © 2020-2023  润新知