1、有哪些⽣命周期被舍弃(3个),哪些⽣命 周期是新增(2个)?

componentWillMount()、componentWillReceiveProps()、componentWillUpdate()被舍弃,static getDerivedStateFromProps()和getSnapshotBeforeUpdate()是新增

2、这些⽣命周期被舍弃或新增的原因?以及 新增⽣命周期的参数和作⽤?

(1)这些旧的生命周期常常被误解以及滥用

(2)在Fiber架构下这些旧的生命周期可能会执行多次,表现就变得不可预期

3、react⼏个版本(1.6.3、1.6.4、1.7.0)对⽣ 命周期的相关处理和规划?

16.3版本:旧的生命周期方法名、别名、新的生命周期方法名有效

16.4版本:旧的生命周期方法名、别名、新的生命周期方法名有效,但旧的生命周期方法名在开发模式下会有警告提示

17.0版本:只有别名和新的生命周期方法名有效

4、为什么要把getDerivedStateFromProps设计为静态⽅法?

因为隔离组件实例访问,所以也就不能用this.setState()等一些方法,保持该方法的纯粹,它就是用来定义派生state的,除此之外不能进行任何操作

5、getDerivedStateFromProps被触发执⾏的条件有哪些?

初始挂载、prop更新、通过setState更新

6、Derived state的定义是?(如何理解derived state?)

派生state,derived state是在静态方法getDerivedStateFromProps里根据props按需更新的state

7、在1.6.3中,setState()不会引起 getDerivedFromProps的执⾏,⽽1.6.4.会,原因是?

16.4版本进行了纠正,确保了与React即将推出的异步呈现模式的兼容性

8、1.6.2及其以前升级到1.6.4的⽅案是?

可以依旧使用旧的生命周期方法名,也可以使用新的生命周期方法名,但两者不能同时使用

9、1.6.x升级到1.7的⽅案是?

只能使用新的生命周期方法名

react 16.3+ 新生命周期 作业的更多相关文章

  1. react 16.3+ 新生命周期

    react 16.3版本出现了两个新的生命周期函数,并将逐渐废弃componentWillMount().componentWillReceiveProps().componentWillUpdate ...

  2. 《React Native 精解与实战》书籍连载「React Native 中的生命周期」

    此文是我的出版书籍<React Native 精解与实战>连载分享,此书由机械工业出版社出版,书中详解了 React Native 框架底层原理.React Native 组件布局.组件与 ...

  3. react实战 系列 —— React 的数据流和生命周期

    其他章节请看: react实战 系列 数据流和生命周期 如何处理 React 中的数据,组件之间如何通信,数据在 React 中如何流动? 常用的 React 生命周期方法以及开源项目 spug 中使 ...

  4. reactjs入门到实战(七)---- React的组件的生命周期

    React的组件的生命周期有三个状态分别是:挂载(生产组件示例化.准备挂载到页面.挂载到页面).更新(更新值.更新DOM).和卸载(卸载后). >>>其他     getInitia ...

  5. react native组件的生命周期

    react native组件的生命周期 一.当页面第一次加载时,会依次调用: constructor() componentWillMount(): 这个函数调用时机是在组件创建,并初始化了状态之后, ...

  6. Android React Native组件的生命周期及回调函数

    熟悉android的童鞋应该都清楚,android是有生命周期的,其很多组件也是有生命周期.今天小编和大家分享的React Native组件的生命周期,还不了解的童鞋,赶紧来围观吧 在android开 ...

  7. React Native 中 component 生命周期

    React Native 中 component 生命周期 转自 csdn 子墨博客  http://blog.csdn.net/ElinaVampire/article/details/518136 ...

  8. React 16.x 新特性思维导图

    React 16版本相对于以前的版本做了很大的改动,下面是我整理的React 16.x 新特性的思维导图文件,欢迎围观和指导:

  9. 【RN - 基础】之React Native组件的生命周期

    下图描述了React Native中组件的生命周期: 从上图中可以看到,React Native组件的生命周期可以分为初始化阶段.存在阶段和销毁阶段. 实例化阶段 实例化阶段是React Native ...

随机推荐

  1. SpringBoot入门简介

    SpringBoot诞生的背景 所有软件行业里面,如果要说商用体系,排在第一位的永远是java,因为java的体系丰富,支持度高,安全性也高 但是我们所有的开发者也不得不去忍受Java中的以下痛苦 举 ...

  2. 【转】在配置静态IP的时候遇到 :bringing up interface eth0 : error unknown connection

    首先这是动态ip配置成功的结果 接下来切换到root用户来配置静态的 按照静态ip的配置方法配置好文件后(具体过程这里就不多加说明) 然后保存退出 当我们重启网卡的时候问题来了(因为本人有点强迫症,多 ...

  3. 59.Target Sum(目标和)

    Level:   Medium 题目描述: You are given a list of non-negative integers, a1, a2, ..., an, and a target, ...

  4. C语言结构体实例-创建兔子

    参考裸编程思想. #include <stdio.h> //#include "ycjobject.h" // 颜色定义 #define CL_BLACK 0 #def ...

  5. asp.net相关的一些代码

    显示目录下的内容 using System.IO; DirectoryInfo di = new DirectoryInfo(Server.MapPath("Views/video" ...

  6. Python内置数学函数

    class NumString: def __init__(self, value): self.value = str(value) def __str__(self): return self.v ...

  7. 【MVC】Spring WebFlux

    一.什么是 Spring WebFlux 下图截自 Spring Boot 官方网站: 结合上图,在了解 Spring WebFlux 之前,我们先来对比说说什么是 Spring MVC,这更有益我们 ...

  8. Hibernate学习 (一)

    Hibernate错误总结: 1:不能自动创建表.把MySQL的版本的方言修改一下. 首先自己要注意自己的MYSQL版本,然后设置对应的方言 兼容性模式 <property name=" ...

  9. Python基础教程(009)--Python程序的格式以及扩展名

    前言: 熟悉编写第一个Python程序 内容 1,Python源程序是一个特殊的文本文件.可以使用任意文本编辑软件做Python开发 2,Python程序的文件扩展名都是.py 熟悉了解: 看到.py ...

  10. 20175203 2018-2019-2《Java程序设计》第四周学习总结

    ## 教材学习内容总结 第五章内容知识点总结: 子类父类的定义格式: class 子类名 extends 父类名 { } 定义子类时用extends Object类是所有类的祖先类,即最原始类. 子类 ...