Ver código fonte

我的练习,我的考试

zjq 5 dias atrás
pai
commit
07cd44587c

+ 5 - 0
src/views/examTrain/exam/practice/components/Practice-exam.vue

@@ -170,6 +170,10 @@ const onSelQuestion = async (value: any) => {
     }
 }
 const onGetQuestionDetail = async (value) => {
+    if (!value){
+        state.loading = false;
+        return;
+    }
     // 初始化选择选择/填写的答案
     state.selRadioValue = '';  
     state.selCheckboxValue = []; 
@@ -196,6 +200,7 @@ const onGetQuestionDetail = async (value) => {
 // 结束考试
 const onSubmit = async () => {
     state.loading = true;
+    await onSelQuestion('');
 	submitUserPractice({
         practiceId: state.practiceId
     }).then(() => {

+ 8 - 8
src/views/examTrain/exam/practice/components/Practice-view.vue

@@ -1,5 +1,5 @@
 <template>
-	<el-dialog v-model="state.dialogVisible" draggable append-to-body destroy-on-close :show-close="false" width="80%" :before-close="closeDialog">
+	<el-dialog v-model="state.dialogVisible" draggable destroy-on-close :show-close="false" width="80%" :before-close="closeDialog">
         <template #header="{ close, titleId, titleClass }">
             <div class="topContent">
                 <div class="titleBox">
@@ -43,13 +43,13 @@
                     <span>参考答案:</span>
                     <p>{{state.questionDetail.answerDesc || '略'}}</p>
                 </div>
-                <div class="referenceAnswer" v-if="state.questionDetail" v-for="item in state.questionDetail.practiceQuestionKnowladgeDtos">
+                <div class="referenceAnswer" v-if="state.questionDetail && state.questionDetail.practiceQuestionKnowladgeDtos.length > 0">
                     <span>关联知识:</span>
-                    <p @click="onKnowladgeTo(item)">{{item.title}}</p>
+                    <p v-for="item in state.questionDetail.practiceQuestionKnowladgeDtos" @click="onKnowladgeTo(item)">{{item.title}}</p>
                 </div>
-                <div class="referenceAnswer" v-if="state.questionDetail" v-for="item in state.questionDetail.practiceQuestionSourcewareDtos">
+                <div class="referenceAnswer" v-if="state.questionDetail && state.questionDetail.practiceQuestionSourcewareDtos.length > 0">
                     <span>关联课件:</span>
-                    <p @click="onSourcewareTo(item)">{{item.name}}</p>
+                    <p v-for="item in state.questionDetail.practiceQuestionSourcewareDtos" @click="onSourcewareTo(item)">{{item.name}}</p>
                 </div>
             </el-col>
         </el-row>
@@ -232,7 +232,7 @@ defineExpose({
     .questionBox{padding: 20px 10px 0;}
     .questionBox .questionTitle{margin-bottom: 10px;font-size: 16px;}
     .questionBox .questionAnswer{padding: 0 20px;}
-    .questionBox .referenceAnswer{background-color: #ebf9ff;margin: 15px 40px 15px 30px;padding: 10px;}
-    .questionBox .referenceAnswer span{vertical-align: top;display: inline-block;}
-    .questionBox .referenceAnswer p{width: calc(100% - 80px);display: inline-block;}
+    .referenceAnswer{background-color: #ebf9ff;margin: 15px 40px 15px 30px;padding: 10px;}
+    .referenceAnswer span{display: block;}
+    .referenceAnswer p{width: calc(100% - 80px);display: block;margin-top: 10px;color: #1890ff;cursor: pointer;}
 </style>

+ 5 - 0
src/views/examTrain/exam/userExam/components/UserExam-exam.vue

@@ -232,6 +232,10 @@ const onSelQuestion = async (value: any) => {
     }
 }
 const onGetQuestionDetail = async (value) => {
+    if (!value){
+        state.loading = false;
+        return;
+    }
     // 初始化选择选择/填写的答案
     state.selRadioValue = '';  
     state.selCheckboxValue = []; 
@@ -262,6 +266,7 @@ const onGetQuestionDetail = async (value) => {
 // 结束考试
 const onSubmit = async () => {
     state.loading = true;
+    await onSelQuestion('');
 	submitUserExam({
         isSubmit: 1
     }).then(() => {