useCurrent
Built-in hooks used in this custom hook: useState
When using the useState
, we encountered quite a few issues that prevented a newcomer
from understanding how to use it properly, mainly from the inherited laggy behavior due to the fact that the state value does not change right after the dispatch.
const [state, dispatchState] = useState(0)
In the preceding line, if we understand the dispatchState
function is to dispatch and request a change, then there's not much we need to do because that's how React designs the useState
. However, most often we tend to think differently:
const [state, setState] = useState(0)
The preceding setState
name is the main reason we push ourselves into trouble, because here we would expect the state
to change right after the setState
statement.
In Chapter 8, Use Ref to Hide Stuff, we used a useRef
to locate the current value. There are two different ways to solve this problem: one is to design a container to keep...