Jelajahi Sumber

代码优化

林旭祥 8 bulan lalu
induk
melakukan
abe086fc3c
2 mengubah file dengan 25 tambahan dan 2 penghapusan
  1. 1 1
      src/components/MultipleItem/index.vue
  2. 24 1
      src/views/train/multiple.vue

+ 1 - 1
src/components/MultipleItem/index.vue

@@ -306,7 +306,7 @@ const initProject = () => {
     if (!faceCheckStu.value.student_id) {
       time = 1000;
     } else {
-      time = 6000;
+      time = 7000;
     }
     setTimeout(() => {
       //再加一个判断以免和再测一次冲突

+ 24 - 1
src/views/train/multiple.vue

@@ -10,7 +10,8 @@
     <div class="main">
       <div class="testBox"
         :class="{ 'testBox1': styleType == 1, 'testBox2': styleType == 2, 'testBox3': styleType == 3 }">
-        <div class="ul" :class="{ 'overlap': ![41, 43].includes(examState), 'ready': [41].includes(examState) }"
+        <div class="ul"
+          :class="{ 'overlap': (examState == 43 && time.ready) || [42].includes(examState) || (showTestAgain && ![41].includes(examState)), 'ready': [41].includes(examState) }"
           v-for="(items, indexs) in testListArr " :key="indexs">
           <MultipleItem :ref="(el: any) => { multipleItemRef(el, item.itemNumber, item.area) }"
             v-for="(item, index) in items" :query="parameter" :area="item.area" :key="index"
@@ -452,6 +453,28 @@ const getAddTestList = (num: number) => {
   }
 };
 
+/**
+ * 播报时间
+*/
+watch(() => time.value.countdownNum, (newData) => {
+  if (examState.value != 42) {
+    return false;
+  }
+  if (newData >= 30) {
+    if (newData % 30 == 0) {
+      speckText(
+        `还有${newData}秒`
+      );
+    }
+  }
+  if (newData == 10) {
+    speckText("还有10秒");
+  }
+  if (newData <= 5) {
+    speckText(newData);
+  }
+}, { immediate: true });
+
 onBeforeMount(() => {
   parameter.value = route.query;
   let project = parameter.value.project;