Skip to content

类组件和函数组件的理解?有什么区别?

类组件

通过使用ES6类的编写形式去编写组件,该类必须继承React.Component

函数组件

通过函数编写的形式去实现一个React组件

区别

  • 编写形式
  • 状态管理
  • 生命周期
  • 调用方式
  • 获取渲染的值

状态管理

在hooks出来之前,函数组件就是无状态组件,不能保管组件的状态,不像类组件中调用setState

如果想要管理state状态,可以使用useState

生命周期

在函数组件中,并不存在生命周期,这是因为这些生命周期钩子都来自于继承的React.Component

所以,如果用到生命周期,就只能使用类组件

但是函数组件使用useEffect也能够完成替代生命周期的作用