| | |
| | | <div class="title-container text-3xl font-semibold text-white mr-8"> |
| | | {{ examInfo.examName }} |
| | | </div> |
| | | |
| | | <AnswerGrade></AnswerGrade> |
| | | |
| | | <div class="return-container grow flex justify-end"> |
| | | <el-button type="danger" size="large" circle @click="closeClick"> |
| | | <template #icon> |
| | |
| | | |
| | | <div class="sheet-wrapper w-full grow relative my-5"> |
| | | <div class="sheet-content absolute top-0 bottom-0 w-full"> |
| | | <!-- <AnswerSheet></AnswerSheet> --> |
| | | <AnswerSheet></AnswerSheet> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <div class="main-wrapper w-full grow relative my-5"> |
| | | <div class="main-content absolute top-0 bottom-0 w-full"> |
| | | <Transition appear name="fade-transform" mode="out-in"> |
| | | <component :is="typeComponent[currentType]" :key="currentIndex"></component> |
| | | </Transition> |
| | | </div> |
| | | </div> |
| | |
| | | </template> |
| | | |
| | | <script setup> |
| | | import { ref, watchEffect } from 'vue'; |
| | | import { storeToRefs } from 'pinia'; |
| | | import { Close,Timer } from '@element-plus/icons-vue'; |
| | | import { Close } from '@element-plus/icons-vue'; |
| | | |
| | | import AnswerTag from './components/answer-tag/index.vue'; |
| | | // import AnswerSheet from './components/answer-sheet/index.vue'; |
| | | import AnswerSheet from './components/answer-sheet/index.vue'; |
| | | import AnswerGrade from './components/answer-grade/index.vue'; |
| | | |
| | | import AnswerSingle from './components/answer-main/answer-single/index.vue'; |
| | | import AnswerMultiple from './components/answer-main/answer-multiple/index.vue'; |
| | | import AnswerAudio from './components/answer-main/answer-audio/index.vue'; |
| | | import AnswerFill from './components/answer-main/answer-fill/index.vue'; |
| | | import AnswerDetermine from './components/answer-main/answer-determine/index.vue'; |
| | | import AnswerShort from './components/answer-main/answer-short/index.vue'; |
| | | import AnswerCount from './components/answer-main/answer-count/index.vue'; |
| | | |
| | | import { useGradeStore } from '@/store/index.js'; |
| | | import { useRouter } from 'vue-router'; |
| | |
| | | const gradeStore = useGradeStore(); |
| | | const { currentType, currentIndex, examDetail, examType, examInfo } = storeToRefs(gradeStore); |
| | | |
| | | // const typeComponent = { |
| | | // 1: AnswerSingle, |
| | | // 2: AnswerMultiple, |
| | | // 3: AnswerAudio, |
| | | // }; |
| | | const typeComponent = { |
| | | 1: AnswerSingle, |
| | | 2: AnswerMultiple, |
| | | 3: AnswerDetermine, |
| | | 4: AnswerFill, |
| | | 5: AnswerShort, |
| | | 6: AnswerAudio, |
| | | 7: AnswerCount, |
| | | 8: AnswerShort, |
| | | }; |
| | | |
| | | |
| | | const prevQuestion = () => { |