다중 사용자 퀴즈 게임 환경에서 퀴즈존 상태와 상호작용을 관리하는 커스텀 훅입니다.

const QuizComponent = () => {
const {
quizZoneState,
initQuizZoneData,
submitQuiz,
startQuiz,
playQuiz
} = useQuizZone();

// 퀴즈 초기화
useEffect(() => {
initQuizZoneData(initialData);
}, []);

// 답안 제출
const handleSubmit = (answer: string) => {
submitQuiz(answer);
};
  • Parameters

    • quizZoneId: string
    • OptionalhandleReconnect: (() => void)
        • (): void
        • Returns void

    • OptionalhandleClose: (() => void)
        • (): void
        • Returns void

    Returns {
        closeConnection: (() => void);
        exitQuiz: (() => void);
        initQuizZoneData: ((quizZone: QuizZone, now: number) => Promise<void>);
        joinQuizZone: ((__namedParameters: any) => void);
        playQuiz: (() => void);
        quizZoneState: QuizZone;
        sendChat: ((chatMessage: any) => void);
        startQuiz: (() => void);
        submitQuiz: ((answer: string) => void);
    }

    퀴즈존 상태와 제어 함수들을 포함하는 객체

    • closeConnection: (() => void)
        • (): void
        • Returns void

    • exitQuiz: (() => void)
        • (): void
        • Returns void

    • initQuizZoneData: ((quizZone: QuizZone, now: number) => Promise<void>)
        • (quizZone, now): Promise<void>
        • Parameters

          Returns Promise<void>

    • joinQuizZone: ((__namedParameters: any) => void)
        • (__namedParameters): void
        • Parameters

          • __namedParameters: any

          Returns void

    • playQuiz: (() => void)
        • (): void
        • Returns void

    • quizZoneState: QuizZone
    • sendChat: ((chatMessage: any) => void)
        • (chatMessage): void
        • Parameters

          • chatMessage: any

          Returns void

    • startQuiz: (() => void)
        • (): void
        • Returns void

    • submitQuiz: ((answer: string) => void)
        • (answer): void
        • Parameters

          • answer: string

          Returns void