广告
返回顶部
首页 > 资讯 > 前端开发 > 其他 >react路由返回时不刷新怎么办
  • 251
分享到

react路由返回时不刷新怎么办

React 2023-05-14 21:05:30 251人浏览 薄情痞子
摘要

本教程操作环境:windows10系统、React18.0.0版、Dell G3电脑。react路由返回时不刷新怎么办?react 跳转后路由变了页面没刷新的解决方案最近在学习React的过程中遇到了路由跳转后页面不刷新的问题,本文就详细的

react路由返回时不刷新怎么办

教程操作环境:windows10系统、React18.0.0版、Dell G3电脑。

react路由返回时不刷新怎么办?

react 跳转后路由变了页面没刷新的解决方案

最近在学习React的过程中遇到了路由跳转后页面不刷新的问题,本文就详细的介绍一下解决方法,需要的朋友们下面随着小编来一起学习学习吧

问题

这样的问题貌似原因还挺多的,我的问题是带参数的url不能刷新,router 5.0版本 ,使用withRouter关联组件进行页面跳转

如下所示

5e0d5eb4e7dec7ac09594cf9e6167cd.jpg

路由代码

b438e8f1e45f639423b73d1dcb0cca0.jpg

解决方案

在路由组件上最上层元素上加一个key增加路由的识别度,因为普通的跳转是根据path来识别的,但是path带上参数时,路由无法精确识别。不过,在跳转页面的时候,每个地址都会在localtion对象里添加一个key。如下打印

// 组件挂载
 componentDidMount() {
   console.log(this.props.location);
 }

ccf4d9823d05a5de15dd779eaa1d45a.jpg

我们将这个key绑定在 路由顶层元素上就能精确定位路由了

render() {
   return (
     {}
     <div key={this.props.location.key}>
         <Switch>
           <Route exact path="/" component={Home} />
           <Route exact path="/products/:id" component={Products} />
           <Route exact path="/about" component={About} />
           <Route exact path="/solution" component={Solution} />
           <Route
             exact
             path="/solutionDetails/:id"
             component={SolutionDetails}
           />
           <Route exact path="/download" component={Download} />
           <Route path="/about" component={Download} />
           <Route exact path="/details/:id" component={Details} />
           <Route path="/contact" component={Contact} />
           <Route component={ErrorPage} />
         </Switch>
     </div>
   );
 }

然鹅,可能你发现 this.props为{} 空对象

那可能是因为你没有使用withRouter关联组件,关联一下就好了。注意一点,app.js无法关联,withrouter只能关联路由组件或者app.js的子组件

import React, { Component } from "react";
import {withRouter } from "react-router";
 
class routers extends Component {
 
 // 组件挂载
 componentDidMount() {
   console.log(this.props.location);
 }
 render() {
   return (
     <div key={this.props.location.key}>
     </div>
   );
 }
}
export default withRouter(routers);

以上就是react路由返回时不刷新怎么办的详细内容,更多请关注编程网其它相关文章!

--结束END--

本文标题: react路由返回时不刷新怎么办

本文链接: https://www.lsjlt.com/news/206592.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • react路由返回时不刷新怎么办
    本教程操作环境:Windows10系统、react18.0.0版、Dell G3电脑。react路由返回时不刷新怎么办?react 跳转后路由变了页面没刷新的解决方案最近在学习React的过程中遇到了路由跳转后页面不刷新的问题,本文就详细的...
    99+
    2023-05-14
    React
  • react路由返回时不刷新如何解决
    这篇文章主要介绍“react路由返回时不刷新如何解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“react路由返回时不刷新如何解决”文章能帮助大家解决问题。react路由返回时不刷新的解决办法:1...
    99+
    2023-07-04
  • react路由页面不刷新怎么办
    本教程操作环境:Windows10系统、react-router v5版、Dell G3电脑。react路由页面不刷新怎么办react-router5 路由跳转页面不刷新问题原因 1. index.js文件中查看App组件是否被包裹在<...
    99+
    2023-05-14
    React
  • react 不自动刷新怎么办
    本教程操作环境:Windows10系统、react18.0.0版、Dell G3电脑。react 不自动刷新怎么办?react项目,修改文件保存后,页面不会自动刷新解决方案:在package.json同级根目录下创建 .env文件写入:FA...
    99+
    2023-05-14
    React
  • Vue路由this.route.push跳转页面不刷新怎么办
    本篇内容主要讲解“Vue路由this.route.push跳转页面不刷新怎么办”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue路由this.route.push跳转页面不刷新怎么办”吧!Vu...
    99+
    2023-07-04
  • react刷新找不到页面怎么办
    本教程操作环境:Windows10系统、react18.0.0版、Dell G3电脑。react刷新找不到页面怎么办?react部署完以后,刷新页面会报错找不到视图今天上午部署完项目以后点击路由都可以跳转,但是在相应的路由刷新的时候却报错了...
    99+
    2023-05-14
    React
  • php怎么实现返回不刷新页面
    本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑php怎么实现返回不刷新页面?PHP实现返回上一页不刷新 和刷新的方法返回上一页不刷新:echo"<script>alert('已从错题本中...
    99+
    2018-11-23
    php
  • php返回时间不对怎么办
    php返回时间不对的解决办法:1、通过“phpinfo();”函数查看php.ini的位置;2、修改php.ini文件里面的“date.timezone”为“Asia/Shanghai”;3、打开需要用到date的代码文件,在代码开始加一句...
    99+
    2023-05-14
    php 时间
  • Vue路由this.route.push跳转页面不刷新怎么解决
    今天小编给大家分享一下Vue路由this.route.push跳转页面不刷新怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文...
    99+
    2022-10-19
  • vue2.0 element-ui中el-upload的before-upload方法返回false时submit()不生效怎么办
    小编给大家分享一下vue2.0 element-ui中el-upload的before-upload方法返回false时submit()不生效怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作