位置: IT常识 - 正文

react实现路由跳转(react路由exact)

编辑:rootadmin
react实现路由跳转 react通过路由实现页面跳转:

推荐整理分享react实现路由跳转(react路由exact),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:react路由跳转导致重新渲染,react路由跳转导致重新渲染,react router 路由跳转,reactjs路由跳转,react 路由跳转,react路由跳转刷新页面,react的路由,react的路由,内容如对您有帮助,希望把文章链接给更多的朋友!

​ 函数式路由(withRouter)使用原生js方法实现路由功能。

​ eg:export default withRouter(Home) Home是组件名称。

示例: class Home extends Component{ <button onClick={this.goForward}>下一级</button> goForward = () => { this.props.history.goForward() //函数式路由 {/* this.props.history.go(0) //正数表示调用几次goForward,负数表示调用几次goBack(),0表示刷新当前页面; this.props.history.goBack() //返回上一级 this.props.history.push('/home') //到哪去 this.props.history.replace() //替换当前路径 历史记录不再会有替换之前的路径 */} } }export default withRouter(Home) 一、准备工作:

​ 1、创建myProject05-router目录

​ 2、创建清单文件, npm init -y

​ 3、安装第三方依赖包,npm install react react-dom react-scripts react-router-dom@5 --save

​ 4、创建public文件夹,在该文件夹下创建index.html

​ 5、创建src文件夹,在该文件夹下创建:

​ (1)入口文件index.js

​ (2)组件App.js和App.css文件

​ (3)创建pages文件夹,在该文件夹下创建Home文件夹,在Home文件夹下创建Cates文件夹(Cates.jsx)和Goods文件夹(Goods.jsx、Goods.css),Home.jsx,Home.css;并在该文件夹下创建About.jsx和Resovle.jsx。

​ 9、src目录:

react实现路由跳转(react路由exact)

二、编写代码:

​ 1、index.html:

<div id="root"></div>

​ 2、index.js:

import ReactDOM from 'react-dom/client'import { BrowserRouter } from 'react-router-dom'import App from './App'const root = ReactDOM.createRoot(document.getElementById('root'))root.render( <BrowserRouter> <App/> </BrowserRouter>)

​ 3、App.js:

import React, { Component } from 'react'import {NavLink, Redirect, Route, Switch} from 'react-router-dom'import About from './pages/About'import Home from './pages/Home/Home'import Resovle from './pages/Resovle'import './App.css'export default class App extends Component { render() { return ( <div className='app'> {/* 制作导航菜单 */} <div className='tabs'> <NavLink to='/home'>首页</NavLink> <NavLink to='/resovle'>解决方案</NavLink> <NavLink to='/about'>关于我们</NavLink> </div> {/* 注册路由(其实就是路径和组件的映射关系) */} {/* 精准匹配 */} <Switch> <Route path='/home' component={Home}/> <Route path='/resovle' component={Resovle}/> <Route path='/about' component={About}/> <Redirect to='/home'/> </Switch> </div> ) }}

​ 4、App.css:

.app { width: 400px; margin: 10px auto;}.tabs { display: flex; flex-direction: rows;}.tabs a{ flex: auto; padding: 10px 30px ; background-color: #777; color: white; margin-right: 1px; text-decoration: none;}

​ 5、Home.jsx

import React, { Component } from 'react'import { NavLink, Redirect, Route, Switch } from 'react-router-dom'import Cates from './Cates/Cates'import Goods from './Goods/Goods'import './Home.css'export default class Home extends Component { render() { return ( <div className='home'> <div className='left'> <NavLink to='/home/cates'>分类</NavLink> <NavLink to='/home/goods'>商品</NavLink> </div> <div className='right'> <Switch> <Route path='/home/cates' component={Cates}/> <Route path='/home/goods' component={Goods}/> <Redirect to='/home/goods'/> </Switch> </div> </div> ) }}

​ 6、Home.css:

.home { margin-top: 10px; display: flex; flex-direction: rows; height: 200px;}.home .left { display: flex; width: 120px; flex-direction: column; background-color: skyblue; margin-right: 1px;}.home .left a { text-decoration: none; color: #333; padding: 10px 0; text-align: center;}.home .left .active { background-color: orange;}.home .right { flex: auto; background-color: greenyellow;}

​ 7、Cates.jsx:

import React, { Component } from 'react'export default class Cates extends Component { goForward = () => { this.props.history.goForward() } render() { return ( <div> <button onClick={this.goForward}>下一级</button> </div> ) }}

​ 8、Goods.jsx:

import React, { Component } from 'react'import './Goods.css'export default class Goods extends Component { push = () => { console.log(this.props); // this.props.history.push('/about') // this.props.history.replace('/about') //替换当前路径记录 少一条记录 } goBack = () => { this.props.history.goBack() } render() { return ( <div className='goods'> <button onClick={this.push}>跳转到about</button> <button onClick={this.goBack}>上一级</button> </div> ) }}

​ 9、Goods.css:

.goods .list{ display: flex; justify-content: space-around; background-color: plum;}.goods .list a { text-decoration: none; color: #333; margin: 10px;}

​ 10、About.jsx:

import React, { Component } from 'react'export default class About extends Component { render() { return ( <div>这是关于我们内容</div> ) }}

​ 11、Resolve.jsx:

import React, { Component } from 'react'export default class Resovle extends Component { render() { return ( <div>这是解决方案内容</div> ) }}三、运行命令:

​ npm react-scripts start

​ 也可以在清单文件中设置简写命令:“start”: “react-scripts start”

"scripts": { "start": "react-scripts start", "test": "echo \"Error: no test specified\" && exit 1" },

) { return (

这是解决方案内容

) } }

## `三、运行命令:`​[npm react-scripts start]()​也可以在清单文件中设置简写命令:["start": "react-scripts start"]()```json "scripts": { "start": "react-scripts start", "test": "echo \"Error: no test specified\" && exit 1" },
本文链接地址:https://www.jiuchutong.com/zhishi/299183.html 转载请保留说明!

上一篇:经典目标检测算法:RCNN、Fast RCNN、 Faster RCNN 基本思想和网络结构介绍(最新的目标检测算法2020)

下一篇:React初体验-Hello React的组件化方式-React入门小案例(react+go)

  • 苹果如何将下载的应用保存到桌面(苹果如何将下载的音乐导入)

    苹果如何将下载的应用保存到桌面(苹果如何将下载的音乐导入)

  • 怎么把抖音视频图片单独保存(怎么把抖音视频上的抖音号去掉)

    怎么把抖音视频图片单独保存(怎么把抖音视频上的抖音号去掉)

  • 手机老是显示小程序调试信息(手机老是显示小屏怎么办)

    手机老是显示小程序调试信息(手机老是显示小屏怎么办)

  • oppo 耳机模式怎么调回来(oppo耳机模式怎么关闭)

    oppo 耳机模式怎么调回来(oppo耳机模式怎么关闭)

  • 一个手机号可以办几个副卡(一个手机号可以办理两个宽带吗)

    一个手机号可以办几个副卡(一个手机号可以办理两个宽带吗)

  • 微信如何恢复拉黑的人(微信如何恢复拉黑联系人)

    微信如何恢复拉黑的人(微信如何恢复拉黑联系人)

  • 苹果xr原彩显示耗电吗(苹果xr原彩显示有什么用)

    苹果xr原彩显示耗电吗(苹果xr原彩显示有什么用)

  • 小米放大器pro网速很慢(小米放大器pro网络连接超时的原因)

    小米放大器pro网速很慢(小米放大器pro网络连接超时的原因)

  • 摄像头被占用无法使用相机怎么办(摄像头被占用无法使用面部解锁)

    摄像头被占用无法使用相机怎么办(摄像头被占用无法使用面部解锁)

  • 小米打印机色带通用吗(小米打印机色带卡住了怎么办)

    小米打印机色带通用吗(小米打印机色带卡住了怎么办)

  • 群主能看到匿名投票吗(群主能看到匿名用户是谁吗)

    群主能看到匿名投票吗(群主能看到匿名用户是谁吗)

  • 华为平板m5返回键在哪里设置(华为平板返回设置)

    华为平板m5返回键在哪里设置(华为平板返回设置)

  • 电脑老是卡死没反应是怎么回事(电脑老是卡死没有反应)

    电脑老是卡死没反应是怎么回事(电脑老是卡死没有反应)

  • ps怎么画弧线(ps怎么画弧线箭头)

    ps怎么画弧线(ps怎么画弧线箭头)

  • 手机区域怎么设置(手机怎么切换区域)

    手机区域怎么设置(手机怎么切换区域)

  • 淘宝需要绑定身份证吗(淘宝要绑定身份证吗)

    淘宝需要绑定身份证吗(淘宝要绑定身份证吗)

  • 外存属于主机吗(外存是硬盘吗?)

    外存属于主机吗(外存是硬盘吗?)

  • 苹果max碎屏险怎么查(苹果碎屏险怎么理赔)

    苹果max碎屏险怎么查(苹果碎屏险怎么理赔)

  • 2016089是哪款机子(型号2016051是什么手机)

    2016089是哪款机子(型号2016051是什么手机)

  • 小米8se是双卡双待吗(小米8se双4g)

    小米8se是双卡双待吗(小米8se双4g)

  • 华为消费者bg成立于哪一年(华为消费者bg在哪个城市)

    华为消费者bg成立于哪一年(华为消费者bg在哪个城市)

  • iqoo背面的灯怎么亮(iqoo背面灯怎么开)

    iqoo背面的灯怎么亮(iqoo背面灯怎么开)

  • cad怎么约束固定(cad制图固定约束)

    cad怎么约束固定(cad制图固定约束)

  • 优酷智能播放能取消吗(智能优酷app)

    优酷智能播放能取消吗(智能优酷app)

  • 朋友圈三天可见后分组(朋友圈三天可见是所有人都一样吗)

    朋友圈三天可见后分组(朋友圈三天可见是所有人都一样吗)

  • ChatGPT 逆天测试,结局出乎预料

    ChatGPT 逆天测试,结局出乎预料

  • 交所得税用计提吗
  • 税务ukey使用教程视频
  • 缴纳个人社保在哪里可以缴
  • 以现金形式收到包装物押金
  • 应交税费和所得税费用会计分录
  • 政府补贴的内容
  • 个人合伙清算如何起诉
  • 物业补贴计入什么科目
  • 库存金额负数怎么处理
  • 公司成本可以抵扣税吗
  • 解聘职工赔偿工资包括哪些
  • 企业交的社保是什么
  • 2017年的7月1日
  • 蓝字发票是什么票据类型
  • 销售给个人的货款要走公户吗
  • 增值税适用范围和税率
  • 利息支出手续费
  • 季度申报利润表怎么填
  • win7系统打开软件就停止工作
  • 预收账款可计入
  • 公司注销往来账的账务处理
  • 微软告诉你
  • 非盈利组织又称
  • php字符串的三种定义方式
  • php常见面试题
  • 拍卖有抵押的车子怎么处理
  • 斯塔尔德
  • 金融企业财务规则(征求意见稿)
  • elementui级联选择器清空方法
  • react框架和vue哪个用的人多
  • SwinIR实战:详细记录SwinIR的训练过程
  • htmlspecialchars_decode
  • 前端高手进阶
  • 小程序项目开发流程
  • chat top
  • gawk命令 模式扫描与处理语言
  • tr命令详解
  • php static变量
  • 中标费用由哪方出
  • 先开发票后收款可以合并做账吗
  • js闭包示例
  • 长期股权投资的明细科目有哪些
  • 小微企业的税收优惠政策2023
  • 发票冲红视频教程
  • 劳务派遣公司开票内容写什么
  • 生产成本月末结转后有余额吗
  • 其他应收款在现金流量表怎么填
  • 提取安全生产费用是什么意思
  • 出差期间招待费用怎样报销
  • 预付加油款收到发票怎么处理
  • 收到垫付款计入什么科目
  • 职工薪酬一般计入哪些科目进行核算
  • 如何进行税前扣除
  • 管理费用如何做分录
  • 装修公司完工交付文案
  • 企业预付账款是什么意思
  • mysql zip archive 版本(5.7.19)安装教程详细介绍
  • win2008r2密码忘了
  • linux系统配置命令
  • centos 网络监控
  • xp系统的硬盘装到win7电脑
  • macbookair电脑屏幕
  • linux添加系统调用的步骤
  • linux管理员权限命令
  • 笔记本win7电源已接通未充电怎么办
  • jquery实现手风琴遇到问题
  • bootstrap入门
  • python3安装pygame
  • shc加密后不能运行
  • bootstrap 按钮
  • fragment切换保存状态
  • javascript组成
  • python遍历文件目录
  • python的入门教程
  • 环保税征收标准可以改吗
  • 个人所得税全年不到60000,单月超过
  • 北京市地方税务局土地增值税清算管理规程
  • 骗取国家出口退税罪
  • 建筑公司报销流程
  • 新疆都有哪些地貌
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设