瀏覽代碼

更新data 数据

aamin 1 年之前
父節點
當前提交
3354a509f9

+ 2 - 0
linjiagou/components.d.ts

@@ -8,6 +8,8 @@ export {}
 declare module 'vue' {
   export interface GlobalComponents {
     AudioBox: typeof import('./src/components/AudioBox.vue')['default']
+    BorderBox: typeof import('./src/components/BorderBox/index.vue')['default']
+    Button: typeof import('./src/components/Button/index.vue')['default']
     Progress: typeof import('./src/components/progress.vue')['default']
     RouterLink: typeof import('vue-router')['RouterLink']
     RouterView: typeof import('vue-router')['RouterView']

+ 1 - 1
linjiagou/index.html

@@ -4,7 +4,7 @@
     <meta charset="UTF-8" />
     <link rel="icon" type="image/svg+xml" href="/vite.svg" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <title>岳阳市博物馆语音导览</title>
+    <title>榆林杨家沟革命纪念馆</title>
   </head>
   <body>
     <div id="app"></div>

+ 5 - 3
linjiagou/src/App.vue

@@ -22,15 +22,17 @@ onMounted(() => {
 
 <style scoped>
 @font-face {
-  font-family: "Microsoft YaHei-Bold"; /* 字体名称 */
-  src: url("../src/assets/font/MicrosoftYaHei-Bold.ttf"); /* 字体文件相对路径 */
+  font-family: "AlimamaShuHeiTi-Bold"; /* 字体名称 */
+  src: url("../src/assets/font/AlimamaShuHeiTi-Bold.ttf"); /* 字体文件相对路径 */
 }
 
 .all {
-  width: 100%;
+  width: 100vw;
+  height: 100vh;
 }
 * {
   margin: 0;
   padding: 0;
+  box-sizing: border-box;
 }
 </style>

二進制
linjiagou/src/assets/img/home/bg.png


二進制
linjiagou/src/assets/img/icon/left.png


+ 10 - 0
linjiagou/src/components/BorderBox/index.vue

@@ -0,0 +1,10 @@
+<script setup lang='ts'>
+</script>
+
+<template>
+<div class=''></div>
+</template>
+
+<style lang='less' scoped>
+
+</style>

+ 45 - 0
linjiagou/src/components/Button/index.vue

@@ -0,0 +1,45 @@
+<script setup lang="ts"></script>
+
+<template>
+  <div class="back-button">
+    <div class="icon">
+      <img src="../../assets/img/icon/left.png" alt="" />
+    </div>
+    <div class="txt">返回</div>
+  </div>
+</template>
+
+<style lang="less" scoped>
+.back-button {
+  width: 85px;
+  height: 35px;
+  border-radius: 50px;
+  background: #b43a16;
+  padding: 5px;
+  display: flex;
+  // justify-content: center;
+  align-items: center;
+  cursor: pointer;
+  .icon {
+    width: 25px;
+    height: 25px;
+    margin-right: 5px;
+    background: #fff3e1;
+    border-radius: 50px;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    img {
+      width: 20px;
+      height: 20px;
+    }
+  }
+  .txt {
+    color: white;
+    font-family: "AlimamaShuHeiTi-Bold";
+    letter-spacing: 3px;
+    font-weight: bold;
+    font-size: 15px;
+  }
+}
+</style>

文件差異過大導致無法顯示
+ 75 - 0
linjiagou/src/data/data.ts


+ 6 - 0
linjiagou/src/routes/index.ts

@@ -7,6 +7,12 @@ let routes = [
     name: "home",
     component: () => import("@/view/home/index.vue"),
   },
+  // 文物鉴赏
+  {
+    path: "/product",
+    name: "product",
+    component: () => import("@/view/product/index.vue"),
+  },
 ];
 // 路由
 const router = createRouter({

+ 34 - 0
linjiagou/src/view/home/components/introduce/index.vue

@@ -0,0 +1,34 @@
+<script setup lang="ts">
+import BButton from "@/components/Button/index.vue";
+const emit = defineEmits(["close"]);
+const close = () => {
+  emit("close");
+};
+</script>
+
+<template>
+  <div class="info">
+    <div class="cad">
+      <BButton @click="close" />
+    </div>
+  </div>
+</template>
+
+<style lang="less" scoped>
+.info {
+  width: 100%;
+  height: 100%;
+  background: rgba(0, 0, 0, 0.466);
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  position: absolute;
+  z-index: 2;
+  .cad {
+    width: 70%;
+    height: 85%;
+    background: rgba(255, 0, 0, 0.151);
+    border-radius: 10px;
+  }
+}
+</style>

+ 22 - 0
linjiagou/src/view/home/components/scene/index.vue

@@ -0,0 +1,22 @@
+<script setup lang="ts">
+import dataList from "@/data/data";
+</script>
+
+<template>
+  <div class="list">
+    <div class="list-item">
+      
+    </div>
+  </div>
+</template>
+
+<style lang="less" scoped>
+.list {
+  width: 100%;
+  height: 100%;
+  background: rgba(0, 0, 0, 0.466);
+  display: flex;
+  justify-content: center;
+  align-items: center;
+}
+</style>

+ 117 - 2
linjiagou/src/view/home/index.vue

@@ -1,15 +1,130 @@
 <script setup lang="ts">
+import Introduce from "./components/introduce/index.vue";
+
+const router = useRouter();
+
+const moduleIndex = ref(0);
+watch(moduleIndex, (newValue: number) => {
+  // console.log(moduleIndex.value);
+  if (newValue === 3) {
+    router.push({
+      path: "/product",
+    });
+  }
+});
 
 onMounted(() => {
-  //console.log(dataList);
+  moduleIndex.value = 0;
 });
 </script>
 
 <template>
   <div class="all">
-   
+    <!-- 功能栏 -->
+    <div class="option-box">
+      <!-- 展馆介绍 -->
+      <div
+        class="box-item"
+        @click="
+          () => {
+            moduleIndex = 1;
+          }
+        "
+      >
+        <div class="box-top"></div>
+        <div class="box-botoom">展馆介绍</div>
+      </div>
+      <div class="box-line"></div>
+      <!-- 星星 -->
+      <div class="box-line"></div>
+      <div
+        class="box-item"
+        @click="
+          () => {
+            moduleIndex = 2;
+          }
+        "
+      >
+        <div class="box-top"></div>
+        <div class="box-botoom">线上展厅</div>
+      </div>
+      <div class="box-line"></div>
+      <!-- 星星 -->
+      <div class="box-line"></div>
+      <div
+        class="box-item"
+        @click="
+          () => {
+            moduleIndex = 3;
+          }
+        "
+      >
+        <div class="box-top"></div>
+        <div class="box-botoom">文物鉴赏</div>
+      </div>
+    </div>
+
+    <!-- 场馆介绍 -->
+    <Introduce
+      v-show="moduleIndex == 1"
+      @close="
+        () => {
+          moduleIndex = 0;
+        }
+      "
+    />
+
+    <!--  -->
   </div>
 </template>
 
 <style lang="less" scoped>
+.all {
+  width: 100%;
+  height: 100%;
+  background: rgba(85, 117, 224, 0.418);
+  background-size: 100% 100%;
+
+  .option-box {
+    width: 100%;
+    height: 100px;
+    display: flex;
+    justify-content: center;
+    position: absolute;
+    bottom: 0;
+    // background: rgba(114, 17, 17, 0.671);
+
+    .box-item {
+      height: 100%;
+      cursor: pointer;
+      .box-top {
+        width: 68px;
+        height: 68px;
+        background: #fff3e1;
+        border-radius: 20px;
+        display: flex;
+        justify-content: center;
+        align-items: center;
+        margin-bottom: 5px;
+      }
+      .box-botoom {
+        width: 100%;
+        text-align: center;
+        font-family: "AlimamaShuHeiTi-Bold";
+        font-weight: bold;
+        font-size: 16px;
+        color: #fff3e1;
+      }
+    }
+
+    .box-line {
+      width: 70px;
+      height: 2px;
+      background: #fff3e1;
+      margin-top: 34px;
+      margin-left: 5px;
+      margin-right: 5px;
+    }
+  }
+}
 </style>

+ 30 - 0
linjiagou/src/view/product/index.vue

@@ -0,0 +1,30 @@
+<script setup lang="ts">
+import BButton from "@/components/Button/index.vue";
+</script>
+
+<template>
+  <div class="all">
+    <BButton
+     class="back-btn"
+      @click="
+        () => {
+          window.history.go(-1);
+        }
+      "
+    />
+  </div>
+</template>
+
+<style lang="less" scoped>
+.all {
+  width: 100%;
+  height: 100%;
+  // background: red;
+
+  .back-btn {
+    position: absolute;
+    left: 5%;
+    top: 5%;
+  }
+}
+</style>