Disable button while event is submitting
This commit is contained in:
@@ -44,6 +44,7 @@ export default function () {
|
|||||||
const [eventType, setEventType] = useState("");
|
const [eventType, setEventType] = useState("");
|
||||||
const [riddleAnswer, setRiddleAnswer] = useState("");
|
const [riddleAnswer, setRiddleAnswer] = useState("");
|
||||||
const [submitSuccess, setSubmitSuccess] = useState(false);
|
const [submitSuccess, setSubmitSuccess] = useState(false);
|
||||||
|
const [disableSubmit, setDisableSubmit] = useState(false);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setDatePickerMin(`${new Date().toISOString().split("T").at(0)}`);
|
setDatePickerMin(`${new Date().toISOString().split("T").at(0)}`);
|
||||||
@@ -53,6 +54,7 @@ export default function () {
|
|||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
async function submit() {
|
async function submit() {
|
||||||
|
setDisableSubmit(true);
|
||||||
let eventResp: Response;
|
let eventResp: Response;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@@ -69,6 +71,7 @@ export default function () {
|
|||||||
method: "POST",
|
method: "POST",
|
||||||
});
|
});
|
||||||
} catch {
|
} catch {
|
||||||
|
setDisableSubmit(false);
|
||||||
toast({
|
toast({
|
||||||
description: "Please check your internet and try again",
|
description: "Please check your internet and try again",
|
||||||
isClosable: true,
|
isClosable: true,
|
||||||
@@ -86,6 +89,7 @@ export default function () {
|
|||||||
errorMessage = ((await eventResp.json()) as { error: string }).error;
|
errorMessage = ((await eventResp.json()) as { error: string }).error;
|
||||||
} catch {}
|
} catch {}
|
||||||
|
|
||||||
|
setDisableSubmit(false);
|
||||||
toast({
|
toast({
|
||||||
description: errorMessage,
|
description: errorMessage,
|
||||||
isClosable: true,
|
isClosable: true,
|
||||||
@@ -150,7 +154,11 @@ export default function () {
|
|||||||
onChange={(e) => setRiddleAnswer(e.target.value)}
|
onChange={(e) => setRiddleAnswer(e.target.value)}
|
||||||
placeholder="Riddle answer"
|
placeholder="Riddle answer"
|
||||||
/>
|
/>
|
||||||
<Button mt="16px" onClick={async () => await submit()}>
|
<Button
|
||||||
|
disabled={disableSubmit}
|
||||||
|
mt="16px"
|
||||||
|
onClick={async () => await submit()}
|
||||||
|
>
|
||||||
Book
|
Book
|
||||||
</Button>
|
</Button>
|
||||||
</Container>
|
</Container>
|
||||||
|
|||||||
Reference in New Issue
Block a user