Why it is bad?
Strict mode
First of all, since React v18, strict mode is implemented. It will mount you component twice to ensure solidity of your code, so useEffect will be called twice.
It is too imperative:

What is it good for?
It is good for synchronization

Event listeners

Where should effects go?




Notes
Fetching data


Effects

Conclusion
