import { useState } from 'react' import AudioPlayer from '@/components/AudioPlayer' import { ChoiceTestProps } from '@/types/review' import { ErrorReportButton } from '@/components/review/shared' interface VocabChoiceTestProps extends ChoiceTestProps { // VocabChoiceTest specific props (if any) } export const VocabChoiceTest: React.FC = ({ cardData, options, onAnswer, onReportError, disabled = false }) => { const [selectedAnswer, setSelectedAnswer] = useState(null) const [showResult, setShowResult] = useState(false) const handleAnswerSelect = (answer: string) => { if (disabled || showResult) return setSelectedAnswer(answer) setShowResult(true) onAnswer(answer) } const isCorrect = selectedAnswer === cardData.word return (
{/* 標題區 */}

詞彙選擇

{cardData.difficultyLevel}
{/* 指示文字 */}

請選擇符合上述定義的英文詞彙:

{/* 定義顯示區 */}

定義

{cardData.definition}

{/* 同義詞顯示 */} {cardData.synonyms && cardData.synonyms.length > 0 && (

同義詞提示

{cardData.synonyms.map((synonym, index) => ( {synonym} ))}
)}
{/* 選項區域 - 響應式網格布局 */}
{options.map((option, idx) => ( ))}
{/* 結果反饋區 */} {showResult && (

{isCorrect ? '正確!' : '錯誤!'}

{!isCorrect && (

正確答案是:{cardData.word}

)}
{cardData.pronunciation && {cardData.pronunciation}}
)}
) }