21 lines
785 B
JavaScript
21 lines
785 B
JavaScript
//@ts-nocheck
|
|
//只是删除isPrimitive check
|
|
|
|
import { useEffect, useRef } from 'react';
|
|
var useCustomCompareEffect = function useCustomCompareEffect(effect, deps, depsEqual) {
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
if (!(deps instanceof Array) || !deps.length) {
|
|
console.warn('`useCustomCompareEffect` should not be used with no dependencies. Use React.useEffect instead.');
|
|
}
|
|
if (typeof depsEqual !== 'function') {
|
|
console.warn('`useCustomCompareEffect` should be used with depsEqual callback for comparing deps list');
|
|
}
|
|
}
|
|
var _depsEqual = depsEqual;
|
|
var ref = useRef(undefined);
|
|
if (!ref.current || !_depsEqual(deps, ref.current)) {
|
|
ref.current = deps;
|
|
}
|
|
useEffect(effect, ref.current);
|
|
};
|
|
export default useCustomCompareEffect; |