Ver código fonte

抽象 isTrackMode

Michael Wang 3 anos atrás
pai
commit
7dee2a198a

+ 1 - 5
src/features/mark/Mark.vue

@@ -5,7 +5,7 @@
       <mark-history show-search show-order :get-history="getHistoryTask" />
       <mark-body @error="removeBrokenTask" />
       <mark-board-track
-        v-if="showMarkBoardTrack"
+        v-if="store.isTrackMode"
         @submit="saveTaskToServer"
         @allZeroSubmit="allZeroSubmit"
         @unselectiveSubmit="unselectiveSubmit"
@@ -194,10 +194,6 @@ watch(
   }
 );
 
-let showMarkBoardTrack = $computed(() => {
-  return store.setting.mode === ModeEnum.TRACK;
-});
-
 const removeBrokenTask = () => {
   store.currentTask = undefined;
 

+ 1 - 1
src/features/mark/MarkBody.vue

@@ -183,7 +183,7 @@ watch(
 );
 let theCursor = null as any;
 onMounted(() => {
-  if (store.setting.mode === ModeEnum.TRACK) {
+  if (store.isTrackMode) {
     theCursor = new CustomCursor(".cursor", {
       focusElements: [
         {

+ 1 - 3
src/features/mark/MarkDrawTrack.vue

@@ -1,7 +1,7 @@
 <template>
   <template v-for="(track, index) in trackList" :key="index">
     <div
-      v-if="isTrackMode"
+      v-if="store.isTrackMode"
       class="score-container"
       :class="[focusedTrack(track) && 'score-animation']"
       :style="computeTopAndLeft(track)"
@@ -39,8 +39,6 @@ const props = defineProps<{
 }>();
 const { trackList } = toRefs(props);
 
-let isTrackMode = $computed(() => store.setting.mode === ModeEnum.TRACK);
-
 const computeTopAndLeft = (track: Track | SpecialTag) => {
   const topInsideSlice = track.offsetY - props.dy;
   const leftInsideSlice = track.offsetX - props.dx;

+ 1 - 1
src/features/mark/MarkHeader.vue

@@ -351,7 +351,7 @@ let exchangeModeName = $computed(() =>
 );
 
 async function toggleSettingMode() {
-  if (store.setting.mode === ModeEnum.TRACK) {
+  if (store.isTrackMode) {
     store.setting.mode = ModeEnum.COMMON;
   } else {
     store.setting.mode = ModeEnum.TRACK;

+ 3 - 0
src/store/store.ts

@@ -57,6 +57,9 @@ export const useMarkStore = defineStore("mark", {
     } as MarkStore;
   },
   getters: {
+    isTrackMode(): boolean {
+      return store.setting.mode === ModeEnum.TRACK;
+    },
     /* 是否是扫描阅卷 */
     isScanImage(): boolean {
       return this.setting.examType === "SCAN_IMAGE";