From cb3f21aa2e059329d0b63184931633ce151d62ee Mon Sep 17 00:00:00 2001 From: "sosuke.iwabuchi" Date: Thu, 1 Jun 2023 09:26:08 +0900 Subject: [PATCH] =?UTF-8?q?=E3=83=90=E3=83=83=E3=82=AF=E3=83=89=E3=83=AD?= =?UTF-8?q?=E3=83=83=E3=83=97=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/hooks/useAPICall.ts | 13 ++++++++++++- .../hooks/useMailPostCompleteDialog.tsx | 13 ++----------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/src/hooks/useAPICall.ts b/src/hooks/useAPICall.ts index 0ebddbd..b593949 100644 --- a/src/hooks/useAPICall.ts +++ b/src/hooks/useAPICall.ts @@ -1,9 +1,10 @@ -import { useCallback, useMemo, useState } from "react"; +import { useCallback, useEffect, useMemo, useState } from "react"; import { APICommonResponse, apiRequest, ResultCode } from "api"; import { UseFormReturn } from "react-hook-form"; import { Dictionary } from "@types"; import { useSnackbar } from "notistack"; import usePage from "./usePage"; +import useBackDrop from "./useBackDrop"; export const APIErrorType = { NONE: "none", @@ -23,6 +24,7 @@ export default function useAPICall< form, successMessage = false, failedMessage = false, + backDrop = false, }: { apiMethod: (sendData: T) => Promise; onSuccess?: (res: U, sendData: T) => void; @@ -30,6 +32,7 @@ export default function useAPICall< form?: UseFormReturn; successMessage?: ((res: U) => string) | boolean; failedMessage?: ((res: APICommonResponse | null) => string) | boolean; + backDrop?: boolean; }) { const [sending, setSending] = useState(false); const [sendData, setSendData] = useState(null); @@ -43,6 +46,8 @@ export default function useAPICall< const { enqueueSnackbar } = useSnackbar(); + const { setShowBackDrop } = useBackDrop(); + const clearErrors = () => { setResult(null); setErrors({}); @@ -164,6 +169,12 @@ export default function useAPICall< return data; }; + useEffect(() => { + if (backDrop) { + setShowBackDrop(sending); + } + }, [sending]); + return { callAPI, sending, diff --git a/src/pages/dashboard/receipt-issuing-order/hooks/useMailPostCompleteDialog.tsx b/src/pages/dashboard/receipt-issuing-order/hooks/useMailPostCompleteDialog.tsx index fa980bb..48109fb 100644 --- a/src/pages/dashboard/receipt-issuing-order/hooks/useMailPostCompleteDialog.tsx +++ b/src/pages/dashboard/receipt-issuing-order/hooks/useMailPostCompleteDialog.tsx @@ -45,8 +45,9 @@ export default function useMailPostCompleteDialog( ), }); - const { callAPI, sending } = useAPICall({ + const { callAPI } = useAPICall({ apiMethod: completeMailPost, + backDrop: true, onSuccess: () => { success("登録しました"); setShow(false); @@ -93,16 +94,6 @@ export default function useMailPostCompleteDialog( ); - useEffect(() => { - setShowBackDrop(sending); - }, [sending]); - - useEffect(() => { - console.log(now()); - // console.log(formatDateStr(now())); - // form.setValue('date', formatDateStr(now()) - }, []); - return { // param show,