Skip to content

声明式设计 虚拟 Dom 减少与真实 Dom 的交互 灵活具有丰富的 React 组件库 单项数据流,不像 Vue 的双向绑定。

JSX 语法

本质上就是在 JS 的基础上添加了 html 的标签结构。

Hooks

路由

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

<Switch>// 外层套 Switch组件 防止穿透效果
	<BrowserRouter> // 浏览器路由模式
		<Link to= "组件地址" /> // <Link to="/uri">组件名称</Link>
		<NavLink > // 同Link,多了一个ActiveClassName  选中时的样式
		<Route path = "路由地址" component={组件名称}/>  
	</BrowserRouter>
</Switch>

路由组件与普通组件的差异

  • 写法
    • 普通组件:
    • 路由组件: <Route component = {Demo}/>
  • 存放位置
    • 普通组件 : components
    • 路由组件: pages
  • Props 内容
    • 普通组件: 传什么有什么
    • 路由组件: 固定属性.

针对普通组件的 props 中没有路由组件属性的解决方案: withRouter

impl {withRouter} from react

export default withRouter(YourComponent)

路由传递的 Props

  • history:
  • location:
  • match:

重定向 Redirect

<Redirect to = "/path" />

waitingresult.com