zoukankan      html  css  js  c++  java
  • react 16.3+ 新生命周期 作业

    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的⽅案是?

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

  • 相关阅读:
    Redis 的安装
    oracle表分区
    HashMap、HashTable、LinkedHashMap和TreeMap用法和区别
    HashMap和LinkedHashMap区别
    SpringMVC MultiActionController 默认方法名解析器
    静态资源无法访问问题
    JMeter-简单控制器
    JMeter-随机顺序控制器
    JMeter-随机控制器
    JMeter-交替控制器
  • 原文地址:https://www.cnblogs.com/ruoshuisanqian/p/11260089.html
Copyright © 2011-2022 走看看