With now hooks in react it has become more powerful to write components and to reuse the code.
Hooks let you hook into your functional components state and their lifecycle features. Previously to use state in components, you would need to create a class component, but with hooks, you can just create a functional component and react allows to use of state using - 'useState' hook.
React by default provides some hooks like useState, useEffect, etc. and gives you the flexibility to create n-number of hooks and use them in your components.
- Hooks allow to reuse component logic without changing the hierarchy of component.
- They let us split the large components into much smaller ones which earlier was dependent on the lifecycle methods.
- Use React core features without classes. (A major change which everybody wanted and were looking for)
- Less Code
- Effective Readability, easy to understand and debug.
React Team has also announced that they will be soon
deprecated, currently with the stable release if a component has lifecycle events they will be presented with a warning. I would suggest that if you are planning to make a new project with react, please consider some of your time in learning hooks and use them in your new projects.
With new frameworks being
released like Svelte, I think the competition will be tough but for the next few years, React will be the ideal choice for starting a new project. (The choice depends on you and requirements of your project, please do analyze everything before finalizing any language/framework)