最近因為用抽屜組件會比較多,抽屜中有表單。每次關閉抽屜需要清除表單數據。所以自定義了一個方法
//reset form fields when Draw is form, closed
function useResetFormOnCloseModal({ form, isShowDraw }: { form: any; isShowDraw: boolean }) {
const prevVisibleRef = useRef(false);
const prevVisible = prevVisibleRef.current;
useEffect(() => {
prevVisibleRef.current = isShowDraw;
}, [isShowDraw]);
useEffect(() => {
if (!isShowDraw && prevVisible) {
form.resetFields();
}
}, [form, isShowDraw, prevVisible]);
}
使用方式:
useResetFormOnCloseModal({
form,
isShowDraw
});
