位置: 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)

  • 应交税金和应交税费有啥区别
  • 国际税收协定的名词解释
  • 小规模未达到起征点申报表怎么填
  • 水电费专用发票税率
  • 运输服务的增值税是多少
  • 项目差旅费能计入项目费用吗
  • 公允价值变动损益影响营业利润吗
  • 生产成本里面的直接人工
  • 注册资本可以是0元吗
  • 行政单位收入支出结转
  • 增值税缴纳的罚款怎么算
  • 代扣代缴的增值税算进项税吗
  • 收到社保中心的生育经贴怎么做账
  • 车船税没有发票吗?
  • 不开票不走公账的后果
  • 发行股票购买资产并募集是利好吗
  • 社保费用可以税前扣除吗
  • 汽车修理厂如何做账
  • 银行承兑汇票加工费合同
  • 税种核定办理流程
  • 律师事务所个人所得税
  • 一般纳税人技术开发税率
  • 职工教育经费列支范围及标准
  • 应收账款减值准备可以税前扣除吗
  • 公司注销后银行账户怎么注销
  • 企业不征税收入用于支出所形成的固定资产
  • 网上抵扣发票操作
  • 个体工商户开9%的税需要什么
  • 固定资产投资增值税进项税额抵扣规定
  • 出租房产免收租金合法吗
  • 辅助生产费用的核算
  • 财务费用冲销怎样做分录
  • 经营出租固定资产折旧额计入什么科目
  • 农业合作社农民合作社
  • c++ 库文件
  • 汇票线下清算什么时候能到账
  • 公司债务转移的法律规定
  • 收藏的php常用函数是什么
  • PHP:pg_send_query_params()的用法_PostgreSQL函数
  • 固定资产一次性扣除后第二年账务处理
  • PHP:imagecolorresolve()的用法_GD库图像处理函数
  • 库存股属于什么类账户
  • 长期资产的减值和流动资产的减值的区别
  • 会计劳保用品有哪些东西呢
  • uni-app编译
  • 达摩院 2021
  • un删除
  • 应付职工薪酬中社保费怎么记账
  • 建筑公司遇到的问题
  • 报销职工福利
  • 微信交电费怎么交
  • 所得税费用可以计入税金及附加吗
  • 固定资产折旧的计算方法
  • 所得税费用是什么意思
  • 股东权益和债权人
  • 企业所得税资产总额在哪里填列
  • 年末转出未交增值税借方余额怎么处理
  • 没有进货发票可以开票吗?
  • 自制半成品销售方案
  • 差旅费住宿专票能否抵扣
  • 内账税费计入什么科目
  • 出售二手固定资产如何开票
  • win8系统连接不了网络
  • window msconfig
  • ubuntu 125%
  • xp桌面浏览器图标不见了
  • ie的进程
  • win10系统下如何打开internet(ISS)信息服务
  • 苹果发布新机老款能降多少
  • win7桌面没有了怎么办
  • javascript中this的用法
  • 将字符串小写转换成大写
  • js点击div改变css样式
  • 如何查询税务是否签订三方
  • 北京市地方税务局发票查验
  • 可以抵扣的消费税计入什么科目
  • 国税系统公务员调动
  • 营业税未达起征点
  • 教育费附加地方教育费附加税率
  • 车辆完税证明有啥用
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设