React使用路由跳转时控制台报Cannot update during an existing state transition (such as within `render`)错误
React使用路由跳转时控制台报Cannot update during an existing state transition (such as within render).Render methods should be a pure function of props and state.错误
这个错误是最近在使用this.props.history.replace()方法进行路由跳转,跳转之后,在控制台会产生这个错误,但对实际功能并没有影响。但是有着控制台不能有警告和错误的强迫症迫使我,仔细上网搜索了一下,发现了问题是:
因为history.push()将在render方法中引入副作用。在这种情况下,它会让 React Router 尝试开始更新 props 以反映新路径,这会触发您看到的错误。不要使用history.push(),而是使用 react-router-dom中的Redirect 。通过渲染 Redirect 组件,重定向发生在组件完成渲染之后,这意味着 React Router 所做的更新不会在渲染过程中发生。
//判断用户是否已经登录
if(!isLogin){//注释掉的是不使用Redirect时的代码,会报标题的错误 // this.props.history.replace('/login');// return null;//这里使用Redirect组件,错误消失return <Redirect to='/login'/>}else{}
React使用路由跳转时控制台报Cannot update during an existing state transition (such as within `render`)错误相关推荐
- react 警告Warning: Cannot update during an existing state transition (such as within `render`). Render
react 报错Warning: Cannot update during an existing state transition (such as within `render`). Render ...
- react警告:setState(...): Cannot update during an existing state transition (such as within `render` or
在使用react的时候,发现一个警告 Warning: setState(...):Cannot update during an existing state transition (such as ...
- react项目报出警告Warning: Cannot update during an existing state transition (such as within `render`).
在一次写react项目中,报出如下警告,如图: 意思大概为:在一次改变state或者props值后,触发render()方法执行,重新渲染DOM的过程中,react不允许再有其他的state或者pro ...
- 报错:Cannot update during an existing state transition (such as within `render`).
问题描述:在使用Form组件 为组件赋值时候 存在的warning 翻译: 在现有状态转换期间(例如在`render`中)无法更新.渲染方法应该纯粹是props和state的函数. 解决方式, 在us ...
- vue 项目 路由跳转时,ie报错 缺少')'
vue 项目 路由跳转时,ie报错 缺少')' 报错信息 解决办法 报错信息 vue项目中使用了vue-echarts,项目启动后,在chrome上路由跳转没问题,但是在ie的控制台报"缺少 ...
- react实现路由跳转拦截功能(导航守卫)
react实现路由跳转拦截功能(导航守卫) 背景 方法1:通过Prompt组件实现react路由跳转拦截功能 Prompt组件介绍 Prompt组件示例 自定义Prompt组件的提示弹窗 方法2:通过 ...
- 初学react实现路由跳转_如何使用React构建模因制作者:初学者指南
初学react实现路由跳转 by Avanthika Meenakshi 通过Avanthika Meenakshi 如何使用React构建模因制作者:初学者指南 (How to build a me ...
- 路由跳转时的页面状态保存
前言 我们在开发网页时,经常会遇到一种情况--在一个页面对页面初始状态进行了修改(如已请求到的数据.表单数据.滚动高度等等),跳转到另外一个页面之后再返回到原页面(路由回退),原页面需要保持原先的状态 ...
- 解决React中路由跳转报错:Cannot read property ‘push’ of undefined
React中路由跳转报错: 页面在Router中配置了,但组件无法使用 this.props.history.push() 进行跳转,并且会出现报错:Cannot read property 'pus ...
最新文章
- yum 搭建 LNMP
- 【译】Everything You Need to Know About Decentralized AI
- iOS关于RunLoop和Timer
- AI 云原生浅谈:好未来 AI 中台实践
- 骑马与砍杀python代码_GitHub - yunwei1237/scottish-fold: 一个关于骑马与砍杀的剧本制作工具...
- MySQL查询语句转postGRE语句_PostgreSQL DBA常用SQL查询语句
- 车牌识别的matlab程序(程序_讲解_模板),车牌识别的matlab程序(程序讲解模板)
- CSS选择器的优先级计算
- L1-046 整除光棍 (20 分)
- matlab sprintf函数的用法
- 计算机中SQL中文,SQL是什么意思 sql的中文含义
- JS中的CommonJS和AMD
- 笑不死算你命大了 逗你开心的笑话
- EasyNVR流媒体直播之:零基础实现摄像头的全平台直播 (一)内网直播的实现
- QT起一个线程实时监测某个进程是否正常运行
- find()函数详解
- 5G发展的五大动力和四大挑战
- python按照日期筛选数据_pandas 按日期范围筛选数据的实现
- python列表元素筛选_Python如何筛选序列中的元素
- 浅谈2017棋牌游戏的前景 运营 推广(下) 转贴