You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
20 lines
551 B
20 lines
551 B
import { useEffect, useRef } from 'react';
|
|
/**
|
|
* Creates a `Ref` whose value is updated in an effect, ensuring the most recent
|
|
* value is the one rendered with. Generally only required for Concurrent mode usage
|
|
* where previous work in `render()` may be discarded before being used.
|
|
*
|
|
* This is safe to access in an event handler.
|
|
*
|
|
* @param value The `Ref` value
|
|
*/
|
|
|
|
function useCommittedRef(value) {
|
|
var ref = useRef(value);
|
|
useEffect(function () {
|
|
ref.current = value;
|
|
}, [value]);
|
|
return ref;
|
|
}
|
|
|
|
export default useCommittedRef; |