遇到这样一个问题:

    在组件的componentDidMount中,我需要使用到redux中存储的某个状态。

    但是有趣的是,当我再render中使用相同的状态时,状态会改变,但是在conponentDidMount中使用却不会改变。

    stackoverflow上有很好的解释: https://stackoverflow.com/questions/33960247/react-componentdidmount-not-updating-the-statet

    即componentDidMount只会在第一次渲染时触发,后面就不会再触发了,即使redux中的数据发生了改变,也不会影响到componentDidMount。

  解决方法:

    我们可以在 componentDidUpdate 中使用这个变化的 state, 只要其变化, 那么 componentDidUpdate 中的也会变化,需要格外注意。

redux在componentDidMount中出现的问题 --- state 不变的更多相关文章

  1. 一个Time TodoList实例了解redux在wepy中的使用

    @subject: wepy-redux-time-todo @author: leinov @date:2018-10-30 @notice: 小程序(wepy)开发群110647537 欢迎加入 ...

  2. redux使用过程中遇到的两个致命的关键点

    一.在reducer中,返回的state必须是全新的对象,否则,redux不会执行listening方法,因为redux会认为state没有更新过,没必要重新渲染view. 出现问题的例子: cons ...

  3. 为什么要用redux?component自身管理自己的state难道不更解耦吗?

    这是前几天百度2面的时候,面试官问我的一个问题.说实话当时有点紧张,其实也没去细想,本身react我就学了2个多星期,虽然看过redux这些源码,不过这个问题好像我从来没想过. 那其实react官网本 ...

  4. Redux在项目中的文件结构

    React + Redux   今天我们来唠唠在React一般项目中,使用Redux进行状态管理的时候,相对的如何存放reducer.action.api之类文件的结构与使用时机吧.本章默认看官们已经 ...

  5. react native中对props和state的理解

    最近使用react native这个新的技术做完一个项目,所以赶紧写个博客巩固一下. 今天我想说的是props和state,当然这是我个人的理解,如果有什么不对的地方,望指正. 首先我先说说props ...

  6. 在HyperLedger Fabric中启用CouchDB作为State Database

    回顾一下我之前的一篇博客,在Fabric 1.0中,我们存在3种类型的数据存储,一种是基于文件系统的区块链数据,这个跟比特币很像,比特币也是文件形式存储的.Fabric1.0中的区块链存储了Trans ...

  7. 在react+redux+axios项目中使用async/await

    Async/Await Async/Await是尚未正式公布的ES7标准新特性.简而言之,就是让你以同步方法的思维编写异步代码.对于前端,异步任务代码的编写经历了 callback 到现在流行的 Pr ...

  8. Windows 7 系统中开启 ASP.NET State Service 服务的方法

    控制面板 -> 程序和功能 -> “打开或者关闭 Windows 功能”对话框 -> Internet 信息服务 -> 万维网服务 -> 应用程序开发功能 -> A ...

  9. 父组件中vuex方法更新state,子组件不能及时更新并渲染的解决方法

    场景: 我实际用到的是这样的,我父组件引用子组件related,父组件调用获取页面详情的方法,更新了state值related,子组件根据该related来渲染相关新闻内容,但是页面打开的时候总是先加 ...

随机推荐

  1. Fork/Join 型线程池与 Work-Stealing 算法

    JDK 1.7 时,标准类库添加了 ForkJoinPool,作为对 Fork/Join 型线程池的实现.Fork 在英文中有 分叉 的意思,而 Join 有 合并 的意思.ForkJoinPool ...

  2. 安装TestNG在eclipse中的插件

    两种方法可以安装TestNG Eclipse插件: 第一种,离线安装 TestNG Eclipse插件下载地址http://testng.org/doc/download.html. 下载下来以后,放 ...

  3. 设置 ssh 使用public key 免密码登录

    第一步,生成自己公钥, 私钥 1: ssh-keygen -t rsa 2:   3: root@yjlml:~# ssh-keygen -t rsa 4: Generating public/pri ...

  4. Buffer Pool--SQL Server:Memory Manager 对象

    --=================================================================SELECT * FROM sys.sysperfinfoWHER ...

  5. spring boot maven多模块打包部署到tomcat

    @SpringBootApplication(scanBasePackages = {"com.xxx.*"}) public class ApiApplication exten ...

  6. sql 常用基础查询

    *查询第一条记录:select   top   1   *   from   tablename *随机查询N条记录:select top N * from table order by newid( ...

  7. PHP中关于foreach的笔试题

    1,php与C++的不同之处是PHP中变量没有局部作用域,只有函数作用域和全局作用域.如下函数,在php中,$name的作用域是函数test():在C++中$name的作用域是for循环体,for循环 ...

  8. sql—常用函数

    COUNT()函数 COUNT()函数返回匹配指定条件的行数 SQL COUNT(column_name) 语法 COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入): ...

  9. java springboot+maven发送邮件

    springboot+maven发送邮件 废话不多说直接上代码 1. pom 文件导入jar包 <!--邮件发送--> <dependency> <groupId> ...

  10. 浅谈Android选项卡(三)

    上一节介绍了TabActivity的简单用法,但是现在的Api中已经不建议使用了,建议使用Fragment来替代以上的功能,下面介绍下使用Fragment和ViewPager的结合使用. http:/ ...