import { ref, computed } from 'vue'; import { defineStore } from 'pinia'; export const useGradeStore = defineStore('exam', () => { const examInfo = ref({ examId: 1, examName: '考试名称', examType: '考试类型', examStatus: '考试状态', examStartTime: '2021-01-01', examEndTime: '2021-01-01', examTime: 5, }); const examType = ref({ 1: '单选题', 2: '多选题', 3: '音频题' }); const currentType = ref(1); const currentIndex = ref(0); const examDetail = ref([ { questionType: 1, questionList: [ { "id": null, "questionType": 1, "gradeLevel": null, "subjectId": 2, "title": "1+1=?", "items": [ { "prefix": "A", "content": "1" }, { "prefix": "B", "content": "2" }, { "prefix": "C", "content": "3" }, { "prefix": "D", "content": "4" } ], "analyze": "问小朋友", "correct": "A", "right": "B", "score": "3", "difficult": 5 }, { "id": null, "questionType": 1, "gradeLevel": null, "subjectId": 2, "title": "1+1=?", "items": [ { "prefix": "A", "content": "1" }, { "prefix": "B", "content": "2" }, { "prefix": "C", "content": "3" }, { "prefix": "D", "content": "4" } ], "analyze": "问小朋友", "correct": "A", "right": "B", "score": "3", "difficult": 5 } ] }, { questionType: 2, questionList: [ { "id": null, "questionType": 1, "gradeLevel": null, "subjectId": 2, "title": "1+1=?", "items": [ { "prefix": "A", "content": "1" }, { "prefix": "B", "content": "2" }, { "prefix": "C", "content": "3" }, { "prefix": "D", "content": "4" } ], "analyze": "问小朋友", "correct": "A,B", "right": "A,B,C", "score": "5", "difficult": 5 }, { "id": null, "questionType": 1, "gradeLevel": null, "subjectId": 2, "title": "1+1=?", "items": [ { "prefix": "A", "content": "1" }, { "prefix": "B", "content": "2" }, { "prefix": "C", "content": "3" }, { "prefix": "D", "content": "4" } ], "analyze": "问小朋友", "correct": "A,D", "right": "B,C", "score": "5", "difficult": 5 } ] }, { questionType: 3, questionList: [ { "id": null, "questionType": 1, "gradeLevel": null, "subjectId": 2, "title": "测试音频1", "audioFile": '/test.mp3', "items": [ { "prefix": "A", "content": "1" }, { "prefix": "B", "content": "2" }, { "prefix": "C", "content": "3" }, { "prefix": "D", "content": "4" } ], "analyze": "问小朋友", "correct": "", "right": "B", "score": "3", "difficult": 5 }, { "id": null, "questionType": 1, "gradeLevel": null, "subjectId": 2, "title": "测试音频2", "audioFile": '/test.mp3', "items": [ { "prefix": "A", "content": "1" }, { "prefix": "B", "content": "2" }, { "prefix": "C", "content": "3" }, { "prefix": "D", "content": "4" } ], "analyze": "问小朋友", "correct": "D", "right": "A", "score": "3", "difficult": 5 } ] }, ]); const getActiveQuestion = computed(() => { const temp = examDetail.value.find(item => item.questionType === currentType.value); if (temp) { return temp.questionList[currentIndex.value]; } }); const setExamInfo = (info) => { examInfo.value = info; }; const setExamDetail = (detail) => { examDetail.value = detail; }; return { examInfo, examDetail, examType, currentType, currentIndex, getActiveQuestion, setExamInfo, setExamDetail, }; });