My 2c on the hooks cause:
<a href="https://github.com/salvoravida/react-class-hooks" rel="nofollow">https://github.com/salvoravida/react-class-hooks</a><p>Use Custom Hooks with React Class Components. Compatible React >= 16.0.0
At first glance, hooks are hard to reason about. They encourage changing pure functions into stateful functions that return different results depending on when they were called.<p>Immediately after seeing the first example, I'm left wondering what happens if I called useState(0) twice? Does it produce references to the same state object or two separate ones? Does it throw an error? I see "count" and "setCount" being destructured, but where are they defined? Through static analysis during a special build step, through getters, or what?