请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师,关于setState.... Can only update a mounted or mounting component问题

老师,我之前学过react的基础课程,然后又找的您的高级课程在看,同时也在用学到的东西做自己的webgis Demo,做的过程中遇到了setState.... Can only update a mounted or mounting component问题,这个问题很常见百度搜索到了很多解决方法但是没有一种是和我的情况相似的。我的情况简单描述如下:

我编写了一个A组件,A组件里面包含两个大的div块A1和A2和一个按钮,按钮触发的事件通过修改这两个div的css,通过修改display的none和block来控制这两个div块的交替显示,现在是在程序初始化后第一次加载A组件时A组件的功能执行效果和我预期的相同但是当我将A组件移除后再次加载就会出现错误setState(...): Can only update a mounted or mounting component。具体操作描述如下:先展示的是A1,A1选择条件后点击按钮做查询,然后A2显示结果,按钮一直存在无论是A1显示的情况还是A2显示的情况只要查询条件存在就可以做查询展示,其中A2中展示查询结果用到了dangerouslySetInnerHTML,当程序检测到有查询结果要显示时就修改state值content来做一次重新渲染以达到展示当前查询结果的效果保存就是在做结果展示时出现的,我觉得问题就出在这里但是我自己还是解决不了,最让我疑惑的就是A组件中的div块A1我都可以操作了那A组件应该是已经被添加的状态可就是提示组件未加载问题。。。。。。。。。。。。在这一系列操作中没有组件卸载的操作,不知道为什么就变成组件未加载了,想贴A组件代码的但是内容限制发不了


正在回答 回答被采纳积分+3

1回答

双越 2018-06-22 16:55:51

文字描述实在是看着迷糊(抱歉。。。),你能通过一个简单的 demo 来复现这个问题吗?能复现问题即可,demo 越简单越好。然后把关键代码贴出来看下,通过代码来看问题。

0 回复 有任何疑惑可以回复我~
  • 提问者 qq_小江南_04298178 #1
    谢谢老师回复,一方面我现在想不到怎样一个demo可以复现我的问题,另一方面我做的webgis程序需要的数据都是我用本机上的虚拟机发布的,没有这些数据程序跑不起来...比较麻烦,比较冒昧的请求老师远程一下我的电脑看看可以吗?这个问题实在是很奇怪,我已经折腾了很久了。我编写的组件代码由于发送内容长度限制问题也不知道怎么发给您,我组件内部总共3个state值感觉不复杂但是这个问题很头疼
    回复 有任何疑惑可以回复我~ 2018-06-22 17:07:06
  • 提问者 qq_小江南_04298178 #2
    qq:1195811644   (小江南)
    回复 有任何疑惑可以回复我~ 2018-06-22 17:08:32
  • 双越 回复 提问者 qq_小江南_04298178 #3
    抱歉,实在没法提供这种服务。你这个问题如果没法用 demo 复现,那么系统复杂度还是比较高的,我远程看,不熟悉环境的情况下,也很难短时间给你解决问题。
    回复 有任何疑惑可以回复我~ 2018-06-22 18:28:30
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号