2-1、要求
自定义一个useArray的custom hook。结合react-hook和typescript,实现对数组简单的增加、删除、清空的那个功能,并且对增加的对象类型有限制
2-2、代码实现
export const useDebounce = (value, delay) => {
const [debounceValue, setDebounceValue] = useState(value);
useEffect(() => {
const timer = setTimeout(() => {
setDebounceValue(value);
}, delay);
return () => clearTimeout(timer);
}, [value, delay]);
return debounceValue;
};
const { value, clear, removeIndex, add } = useArray(initValue);
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.