UNPKG

rc-hooks

Version:
24 lines (23 loc) 664 B
import { useRef } from 'react'; import useMountedRef from '../useMountedRef'; /** * 返回上一次的 state 或 props 。 * * @param state 需要记录变化的值。 * @returns 上一次记录的值。 * @example * const [value, setValue] = useState(''); * // 上一次 state 的值。 * const prevValue = usePrevious(value); */ function usePrevious(state) { var mountedRef = useMountedRef(); var prevRef = useRef(); var curRef = useRef(state); if (mountedRef.current && curRef.current !== state) { prevRef.current = curRef.current; curRef.current = state; } return prevRef.current; } export default usePrevious;