Skip to content

Commit f6dcec6

Browse files
committed
feat: 호스트 선택 시에만 버튼 활성화 설정
1 parent 2cad744 commit f6dcec6

File tree

2 files changed

+8
-3
lines changed

2 files changed

+8
-3
lines changed

src/features/event-manage/event-create/ui/EventFunnel.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ const EventFunnel = ({ onNext, onPrev, Funnel, Step, currentStep }: EventFunnelI
2121
if (currentStep === 7) {
2222
createEvent(formState, {
2323
onSuccess: () => {
24-
console.log('API 호출 성공');
2524
navigate('/');
2625
},
2726
onError: error => {
@@ -40,6 +39,7 @@ const EventFunnel = ({ onNext, onPrev, Funnel, Step, currentStep }: EventFunnelI
4039
title="이벤트를 호스팅할 채널을 선택해주세요"
4140
onNext={() => handleNext(String(currentStep + 2))}
4241
onPrev={() => navigate(-1)}
42+
requireValidation={true}
4343
>
4444
<HostSelectionPage onNext={handleNext} currentStep={currentStep} />
4545
</EventRegisterLayout>

src/pages/event-manage/ui/HostSelectionPage.tsx

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
1-
import { useState } from 'react';
1+
import { useEffect, useState } from 'react';
22
import AddButton from '../../../../public/assets/event-manage/creation/AddBtn.svg';
33
import { useFunnelState } from '../../../features/event-manage/event-create/model/FunnelContext';
44

55
interface HostSelectionPageProps {
66
onNext: (nextStep: string) => void;
77
currentStep: number;
8+
onValidationChange?: (isValid: boolean) => void;
89
}
910

10-
const HostSelectionPage = ({ onNext, currentStep }: HostSelectionPageProps) => {
11+
const HostSelectionPage = ({ onNext, currentStep, onValidationChange }: HostSelectionPageProps) => {
1112
const { setFormState } = useFunnelState();
1213
const [selected, setSelected] = useState<number | null>(null);
1314

@@ -37,6 +38,10 @@ const HostSelectionPage = ({ onNext, currentStep }: HostSelectionPageProps) => {
3738
}));
3839
};
3940

41+
useEffect(() => {
42+
onValidationChange?.(selected !== null);
43+
}, [selected, onValidationChange]);
44+
4045
return (
4146
<div className="flex flex-col w-full px-2">
4247
<div

0 commit comments

Comments
 (0)