React hook with same API as useState (plus some extensions) implemented using useReducer
useReducer applies dispatch calls in the order in which they are made. The native useState functionality does not.
Using the traditional useState API
import { useState } from '@jeswr/use-state'
function MyReactComponent() {
const [counter, setCounter] = useState(0);
useEffect(() => {
setCounter(1);
}, [])
return <div>{counter}</div>
}Using the additional modifier parameter
import { useState } from '@jeswr/use-state'
function MyReactComponent() {
const [counter, setCounter] = useState(0, props => props.value);
useEffect(() => {
setCounter({ value: 1 });
}, [])
return <div>{counter}</div>
}©2021–present Jesse Wright, MIT License.