提问者:小点点

React:使用useState钩子的函数组件会被认为是有状态组件吗?


类型的组件是否

function App() {
  const [state,  setState] = React.useState()

  return (
     [...]
  )
}

是否被定义为有状态组件? 或者仍然是一个无状态的功能组件,因为它没有显式地扩展react.component,也没有通过传递super(props)声明状态?

向你致意,康斯坦丁


共2个答案

匿名用户

每个具有状态影响其行为(/render)或另一个组件行为的React组件都可以被视为“有状态组件”。 所以对于问题中的函数-是的,app是有状态的。

匿名用户

无状态组件是指当一个组件纯粹是一个单独的道具的结果时,没有状态,该组件可以被编写为一个纯粹的函数,避免了创建React组件实例的需要。

const Component = ({ name }) => {
  return <>{name}</>;
};

因此,如果它不是无状态的,那么它就是一个有状态的组件。

function App() {
  const [state,setState] = React.useState()
  return <>{state}</>
}