diff --git a/app/ui/lecture/taken-lecture/add-taken-lecture-button.tsx b/app/ui/lecture/taken-lecture/add-taken-lecture-button.tsx index 68462739..7243ab14 100644 --- a/app/ui/lecture/taken-lecture/add-taken-lecture-button.tsx +++ b/app/ui/lecture/taken-lecture/add-taken-lecture-button.tsx @@ -2,6 +2,7 @@ import { LectureInfo } from '@/app/type/lecture'; import Form from '../../view/molecule/form'; import { addTakenLecture } from '@/app/business/lecture/taken-lecture.command'; import { useToast } from '../../view/molecule/toast/use-toast'; +import { useState } from 'react'; interface AddTakenLectureButtonProps { lectureItem: LectureInfo; @@ -9,8 +10,10 @@ interface AddTakenLectureButtonProps { } export default function AddTakenLectureButton({ lectureItem, isTakenLecture }: AddTakenLectureButtonProps) { const { toast } = useToast(); + const [disabled, setDisabled] = useState(isTakenLecture); - const announceSuccessOfAddTakenLecture = () => { + const handleSuccessOfAdditionTakenLecture = () => { + setDisabled(true); return toast({ title: '과목 추가에 성공했습니다', }); @@ -23,13 +26,13 @@ export default function AddTakenLectureButton({ lectureItem, isTakenLecture }: A return addTakenLecture(lectureItem.id); }} failMessageControl="toast" - onSuccess={announceSuccessOfAddTakenLecture} + onSuccess={handleSuccessOfAdditionTakenLecture} >