From a3cc0d240ee750fa23d6a7772346cc6bc1023bae Mon Sep 17 00:00:00 2001 From: 黄何裕 <1053952480@qq.com> Date: 星期五, 12 七月 2024 11:51:55 +0800 Subject: [PATCH] 考试操作加时和交卷 --- src/views/exam/components/answer-time/index.vue | 28 ++++++++++++++++------------ 1 files changed, 16 insertions(+), 12 deletions(-) diff --git a/src/views/exam/components/answer-time/index.vue b/src/views/exam/components/answer-time/index.vue index 9aa8742..67ac431 100644 --- a/src/views/exam/components/answer-time/index.vue +++ b/src/views/exam/components/answer-time/index.vue @@ -1,5 +1,7 @@ <template> - <div class="time-container flex justify-center text-white items-center shadow-md"> + <div + class="time-container flex justify-center text-white items-center shadow-md" + > <el-icon class="mr-1 text-xl" size="24"><Timer /></el-icon> <div class="label mr-1">鍓╀綑鏃堕棿:</div> <el-countdown :value="time" @finish="timeFinish" /> @@ -7,23 +9,26 @@ </template> <script setup> -import {ref} from 'vue'; -import dayjs from 'dayjs'; -import { storeToRefs } from 'pinia'; -import { Timer } from '@element-plus/icons-vue'; -import { useExamStore } from '@/store/index.js'; +import { ref, defineExpose } from "vue"; +import dayjs from "dayjs"; +import { storeToRefs } from "pinia"; +import { Timer } from "@element-plus/icons-vue"; +import { useExamStore } from "@/store/index.js"; const examStore = useExamStore(); const { examInfo } = storeToRefs(examStore); -const emit = defineEmits(['timeOut']); +const emit = defineEmits(["timeOut"]); const time = ref(dayjs().valueOf() + examInfo.value.suggestTime * 1000 * 60); const timeFinish = () => { - emit('timeOut'); -} - + emit("timeOut"); +}; +const addTime = (data) => { + time.value = time.value + data * 1000; +}; +defineExpose({ addTime }); </script> <style lang="scss" scoped> @@ -32,10 +37,9 @@ border-radius: 100px; padding: 10px 0; background-color: rgba($color: #86d7f7, $alpha: 0.3); - } :deep(.el-statistic__number) { color: #ffffff; } -</style> \ No newline at end of file +</style> -- Gitblit v1.8.0