郑柏铃 3 天之前
父節點
當前提交
e4e0f39d19
共有 1 個文件被更改,包括 25 次插入154 次删除
  1. 25 154
      11.vue3/vue-router/src/App.vue

+ 25 - 154
11.vue3/vue-router/src/App.vue

@@ -1,160 +1,31 @@
 <template>
-  <div class="max-w-md mx-auto p-6 bg-white rounded-xl shadow-lg mt-10">
-    <h1 class="text-2xl font-bold text-center mb-6">简易任务计时器</h1>
-    
-    <!-- 时间显示 -->
-    <div class="flex justify-center items-center mb-8">
-      <div class="text-6xl font-mono flex">
-        <span class="w-16 text-center">{{ hours.toString().padStart(2, '0') }}</span>
-        <span class="mx-1">:</span>
-        <span class="w-16 text-center">{{ minutes.toString().padStart(2, '0') }}</span>
-        <span class="mx-1">:</span>
-        <span class="w-16 text-center">{{ seconds.toString().padStart(2, '0') }}</span>
-      </div>
-    </div>
-    
-    <!-- 时间设置 -->
-    <div class="grid grid-cols-3 gap-4 mb-8">
-      <div>
-        <label class="block text-gray-700 text-sm font-medium mb-2">小时</label>
-        <input
-          type="number"
-          v-model.number="hoursInput"
-          min="0"
-          max="23"
-          class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-primary"
-        >
-      </div>
-      <div>
-        <label class="block text-gray-700 text-sm font-medium mb-2">分钟</label>
-        <input
-          type="number"
-          v-model.number="minutesInput"
-          min="0"
-          max="59"
-          class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-primary"
-        >
-      </div>
-      <div>
-        <label class="block text-gray-700 text-sm font-medium mb-2">秒</label>
-        <input
-          type="number"
-          v-model.number="secondsInput"
-          min="0"
-          max="59"
-          class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-primary"
-        >
-      </div>
-    </div>
-    
-    <!-- 控制按钮 -->
-    <div class="flex justify-center space-x-4">
-      <button
-        @click="startTimer"
-        :disabled="isRunning"
-        class="px-6 py-3 bg-green-500 text-white rounded-md hover:bg-green-600 transition-colors"
-      >
-        启动
-      </button>
-      <button
-        @click="pauseTimer"
-        :disabled="!isRunning"
-        class="px-6 py-3 bg-yellow-500 text-white rounded-md hover:bg-yellow-600 transition-colors"
-      >
-        暂停
-      </button>
-      <button
-        @click="resetTimer"
-        class="px-6 py-3 bg-red-500 text-white rounded-md hover:bg-red-600 transition-colors"
-      >
-        重置
-      </button>
-    </div>
+  <div>
+    <h1>首页</h1>
+    <RouterLink to="/home">主页</RouterLink>
+    <RouterLink :to="{
+      name:'liebiao',
+      query:{
+        id:12,
+        age:23,
+        desc:'这是一个对象'
+      }
+    }">列表</RouterLink>
+    <!-- <RouterLink :to="`/list?names=图图`">列表</RouterLink> -->
+    <!-- <RouterLink to='/my/1/易语言'>我的</RouterLink> -->
+    <RouterLink :to="{
+      name:'wode',
+      params:{
+        ids:12
+      }
+    }">我的</RouterLink>
+    <RouterView></RouterView>
   </div>
 </template>
 
-<script setup lang="ts">
-import { ref, onUnmounted } from 'vue';
-
-// 状态管理
-const hours = ref(0);
-const minutes = ref(0);
-const seconds = ref(0);
-const hoursInput = ref(0);
-const minutesInput = ref(0);
-const secondsInput = ref(0);
-const isRunning = ref(false);
-let timer: number | null = null;
-
-// 启动计时器
-const startTimer = () => {
-  // 如果没有设置时间,使用输入值
-  if (hours.value === 0 && minutes.value === 0 && seconds.value === 0) {
-    hours.value = hoursInput.value;
-    minutes.value = minutesInput.value;
-    seconds.value = secondsInput.value;
-  }
-  
-  // 至少需要设置1秒
-  if (hours.value === 0 && minutes.value === 0 && seconds.value === 0) {
-    alert('请设置倒计时时间');
-    return;
-  }
-  
-  isRunning.value = true;
-  
-  // 每秒更新一次
-  timer = setInterval(() => {
-    if (seconds.value > 0) {
-      seconds.value--;
-    } else {
-      if (minutes.value > 0) {
-        minutes.value--;
-        seconds.value = 59;
-      } else {
-        if (hours.value > 0) {
-          hours.value--;
-          minutes.value = 59;
-          seconds.value = 59;
-        } else {
-          // 时间到
-          clearInterval(timer!);
-          isRunning.value = false;
-          alert('时间到!');
-        }
-      }
-    }
-  }, 1000) as unknown as number;
-};
-
-// 暂停计时器
-const pauseTimer = () => {
-  if (timer) {
-    clearInterval(timer);
-    timer = null;
-  }
-  isRunning.value = false;
-};
-
-// 重置计时器
-const resetTimer = () => {
-  pauseTimer();
-  hours.value = 0;
-  minutes.value = 0;
-  seconds.value = 0;
-  hoursInput.value = 0;
-  minutesInput.value = 0;
-  secondsInput.value = 0;
-};
-
-// 组件卸载时清理定时器
-onUnmounted(() => {
-  if (timer) {
-    clearInterval(timer);
-  }
-});
+<script lang="ts" setup>
+import {ref,reactive} from "vue" 
+import { RouterView,RouterLink } from "vue-router";
 </script>
 
-<style scoped>
-/* 自定义样式 */
-</style>
+<style lang="scss" scoped>
+</style>