React Class Components

⚛️ React Class Components

A class component is a JavaScript class that extends React.Component and must have a render() method which returns JSX.


 Basic Structure


 

export default Welcome;

  • class Welcome → defines the component

  • extends React.Component → inherits React component features

  • render() → returns the JSX to be displayed


 Using Class Component


 

export default App;

  • Class components can be reused just like functional components.


 Props in Class Components

Props are accessed using this.props:


 


 State in Class Components

Class components can maintain internal state.


 

  • this.state → stores component data

  • this.setState() → updates state and re-renders the component

  • Methods like increment often need to bind this (or use arrow functions)


 Lifecycle Methods

Class components provide built-in lifecycle methods:

MethodWhen it runs
constructor()Initialize state and props
componentDidMount()After first render
componentDidUpdate(prevProps, prevState)After state or props change
componentWillUnmount()Before component is removed

Example:


 


 Advantages of Class Components

  • Access to state

  • Access to lifecycle methods

  • Works with props

  • Good for complex components (though now hooks replace most uses)


 Modern Recommendation

  • Functional components with hooks are now preferred:

  • Class components are still supported for legacy code.


🎯 Summary

FeatureClass ComponentFunctional Component
Syntaxclass X extends React.Componentfunction X() {}
Statethis.stateuseState hook
LifecyclecomponentDidMount, componentDidUpdateuseEffect hook
this bindingRequired for normal methodsNot needed
Modern usageLess commonPreferred

You may also like...