- 使用 class 关键字创建的组件叫有状态组件,有自己的私有数据和生命周期函数;
- 使用 function 创建的组件叫无状态组件,只有 props , 没有自己的私有数据和生命周期函数。
- 区别:
有状态组件和无状态组件的本质区别就是:有无 state 属性,有无生命周期函数;
1.无状态组件,由于没有自己的state和生命周期函数,所以运行效率会比有状态组件稍微高一点
2. 组件中的 props 和 state/data 之间的区别
props 中的数据都是外界传递过来的
state/data 中的数据,都是组件私有的;(通过Ajax获取回来的数据,一般都是私有数据)
props 中的数据都是只读的;不能重新赋值;
state/data 中的数据,都是可读可写的。