路由的执行过程
1点击link组件 修改了浏览器地址中的url
2react路由监听到地址栏url的变化
3react路由内部遍历所有Route组件 使用路由规则path域pathname进行匹配
4挡路由规则能够匹配地址栏中pathname的时候 就开始展示组件的内容
//导入react import React from 'react' import ReactDOM from 'react-dom' import {BrowserRouter as Router,Route,Link} from "react-router-dom" //导入组件 // 约定1:类组件必须以大写字母开头 // 约定2:类组件应该继承react.component父类 从中可以使用父类的方法和属性 // 约定3:组件必须提供render方法 // 约定4:render方法必须有返回值 const Frist=()=>( <p>页面1的内容p> ) const Home=()=>( <p>页面2的内容p> ) class App extends React.Component { //render方法的调用并不意味着浏览器的重新调用 render() { return ( <Router> <div> <h1>React路由基础h1> {/* 指定路由入口 */} <Link to="/first">页面1Link> <Link to="/home">页面2Link> {/* 指定路由出口 */} <Route path="/first" component={Frist}>Route> <Route path="/home" component={Home}>Route> div> Router> ) } } ReactDOM.render(<App>App>, document.getElementById('root'))
运行结果