|
|
|
|
|
by xpl
628 days ago
|
|
> Yes useEffect is also a huge complex pain point We have a rule of thumb in our projects: if you use useEffect directly in application code, it is a probable sign that something is wrong with your code, like you're working on a wrong level of abstraction. Almost every direct use of useEffect is better solved with some standard hook from a popular library (like react-use or whatever you like — there are plenty of them). Like, binding event listeners? useEventListener Network/async calls? useAsync timeouts/intervals? useInterval, useTimeout And etc. etc. useEffect is really a low-level building block for library code and we rarely use it directly, as it is unsafe and hides the original intent. Much like `new` and `delete` in C++ — you don't use it directly, there are smart pointers. Library hooks are your safe smart pointers over useEffect. |
|