zoukankan      html  css  js  c++  java
  • React中class创建组件和function创建组件的区别

    两种创建组件方式的对比

    注意:使用class关键字创建的组件,有自己的私有数据(this.state)和生命周期函数;

    注意:使用function创建的组件,只有props,没有自己的私有数据和生命周期函数;

    1.用构造函数创建出来的组件:叫做无状态组件【无状态组件用的不多】

    2.用class关键字创建出来的组件叫做有状态组件【用的最多】

    3.什么情况下使用有状态组件?什么情况下用无状态组件?

    • 如果一个组件需要有自己的私有数据,则推荐使用 :class创建的有状态组件;

    • 如果一个组件不需要私有的数据,则推荐使用,无状态组件;

    • React 官方说:无状态组件,由于没有自己的state和生命周期函数,所以运行效率会比又状态组件稍微高一些;

    有状态组件和无状态组件的本质区别就是:有无state属性和有无生命周期函数

    4。组件中的props和state/data之间的区别

    • props中的数据都是外界传递过来的;

    • state/data中的数据,都是组件私有的;(通过ajax获取回来的数据一般都为私有数据)

    • props中的数据都是只读的,不能重新赋值;

    • state/data中的数据,都是可读可写的;

  • 相关阅读:
    线性表——(2)单向链表
    线性表——(1)顺序表
    UVa 1592 数据库
    UVa 12096 集合栈计算机
    Python 协程
    Python 多线程及进程
    Python 日志(Log)
    Python 函数式编程
    Python基础
    DB2 获取前两天的数据
  • 原文地址:https://www.cnblogs.com/liweiz/p/11976527.html
Copyright © 2011-2022 走看看