I never understood what was wrong with class components anyways. What did Hooks bring that couldn't be done in an easier to understand way with class components?
The above criticism that you don’t get to have pure functional components anymore doesn’t really make sense to me - either you have some lingering state to deal with, or you write a pure function. Your hand is forced by the problem. You could switch over to class components but they’re really not much clearer to read.
Most of the bugs I’ve seen have been around JavaScript’s crummy equality checks and the need for more memoisation.
Smaller function components and then adding state with `useState` has simplified my code.