首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >(React-Navigation)在屏幕加载时多次调用redux操作

(React-Navigation)在屏幕加载时多次调用redux操作
EN

Stack Overflow用户
提问于 2017-11-15 02:18:03
回答 1查看 83关注 0票数 0

嗨,当我使用TabNavigator (有5个标签)进入屏幕,其中一个是在componentWillMount上调用redux操作时。但奇怪的是为什么它从不停止调用动作。

EN

回答 1

Stack Overflow用户

发布于 2017-11-15 02:48:35

当您从生命周期方法内部调用setState时,通常会发生这种情况。这会引发连锁反应,因为当Redux更新时,组件会重新渲染,而重新渲染会导致Redux更新。

我可以想象这就是你问题的根源。

要解决这个问题,您需要改进它设置状态的方式,比如只更新需要的字段,或者使组件只侦听一个字段,或者不在那里更新它。

您还可以添加条件语句,如if (this && this) dont update

同样值得研究的是if (props === nextProps) dont update

您可能需要查看shouldComponentUpdate生命周期方法,但我想说的是,一般情况下,应该避免这样做,因为它可能会产生难以追踪的奇怪bug。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47292716

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档