shaogen1995 2 年之前
父节点
当前提交
2fee8054ae

+ 1 - 1
QJKK/src/framework/show/component/rightInco.vue

@@ -115,7 +115,7 @@ export default {
       alert("复制成功");
     },
     rightClisk(type) {
-      if (type === 1) window.location.replace("/YHT/index.html");
+      if (type === 1) window.location.replace("/YHT/index.html#/Home");
       if (type === 2) this.music = !this.music;
       if (type === 3) {
         if (this.like) return;

+ 1 - 1
SWKK/src/components/Rbottom.vue

@@ -277,7 +277,7 @@ export default {
       this.isFullscreen = !this.isFullscreen;
     },
     rightClisk(type) {
-      if (type === 1) window.location.replace("/YHT/index.html");
+      if (type === 1) window.location.replace("/YHT/index.html#/Home");
       else if (type === 2) {
         let dom = document.querySelector("#bacMusic");
         window.bacMusic = dom.paused;

+ 33 - 33
vue/src/views/Goods/components/Img.vue

@@ -4,32 +4,20 @@
       <h3>{{ info.name }}</h3>
       <p v-show="info.age">年代:{{ info.age }}</p>
       <p v-show="info.sort">类别:{{ info.sort }}</p>
+      <p v-show="info.size">尺寸:<span v-html="info.size"></span></p>
       <p v-show="info.grain">质地:{{ info.grain }}</p>
-      <p v-show="info.long">
-        长:{{ info.long }}{{ info.type === "Italy" ? "m" : "cm" }}
-      </p>
-      <p v-show="info.width">
-        宽:{{ info.width }}{{ info.type === "Italy" ? "m" : "cm" }}
-      </p>
-      <p v-show="info.tall">
-        高:{{ info.tall }}{{ info.type === "Italy" ? "m" : "cm" }}
-      </p>
-      <p v-if="info.type === 'Italy'">作者:{{ info.author }}</p>
+      <p v-show="info.estate">级别:{{ info.estate }}</p>
     </div>
     <div class="close" @click="$emit('close')"></div>
     <viewer class="viewerCla" ref="viewer" :images="lookPics">
       <img :src="lookPics[0]" alt="" />
     </viewer>
-    <template v-if="info.imgNum">
+    <template v-if="info.imgNum>1">
       <div class="imgMain">
         <div class="swiper-container">
           <div class="swiper-wrapper">
-            <div
-              class="swiper-slide"
-              v-for="i in info.imgNum"
-              :key="i"
-              @click="lookImg(`goodsData/2D/${info.bs}_${i}.JPG`)"
-            >
+            <div class="swiper-slide" v-for="i in info.imgNum" :key="i"
+              @click="lookImg(`goodsData/2D/${info.bs}_${i}.JPG`)">
               <img v-lazy="`goodsData/2D/${info.bs}_${i}.JPG`" alt="" />
             </div>
           </div>
@@ -40,11 +28,7 @@
       <div class="swiper-pagination"></div>
     </template>
     <div class="imgMain2" v-else>
-      <img
-        v-lazy="`goodsData/2D/${info.bs}.JPG`"
-        alt=""
-        @click="lookImg(`goodsData/2D/${info.bs}.JPG`)"
-      />
+      <img v-lazy="`goodsData/2D/${info.bs}.JPG`" alt="" @click="lookImg(`goodsData/2D/${info.bs}.JPG`)" />
     </div>
   </div>
 </template>
@@ -58,7 +42,7 @@ export default {
   props: {
     info: {
       type: Object,
-      default: () => {},
+      default: () => { },
     },
   },
   data() {
@@ -81,7 +65,7 @@ export default {
     },
   },
   //生命周期 - 创建完成(可以访问当前this实例)
-  created() {},
+  created() { },
   //生命周期 - 挂载完成(可以访问DOM元素)
   mounted() {
     if (this.info.imgNum) {
@@ -99,20 +83,22 @@ export default {
       });
     }
   },
-  beforeCreate() {}, //生命周期 - 创建之前
-  beforeMount() {}, //生命周期 - 挂载之前
-  beforeUpdate() {}, //生命周期 - 更新之前
-  updated() {}, //生命周期 - 更新之后
-  beforeDestroy() {}, //生命周期 - 销毁之前
-  destroyed() {}, //生命周期 - 销毁完成
-  activated() {}, //如果页面有keep-alive缓存功能,这个函数会触发
+  beforeCreate() { }, //生命周期 - 创建之前
+  beforeMount() { }, //生命周期 - 挂载之前
+  beforeUpdate() { }, //生命周期 - 更新之前
+  updated() { }, //生命周期 - 更新之后
+  beforeDestroy() { }, //生命周期 - 销毁之前
+  destroyed() { }, //生命周期 - 销毁完成
+  activated() { }, //如果页面有keep-alive缓存功能,这个函数会触发
 };
 </script>
 <style lang='less' scoped>
 @import "../../../assets/Swiper/swiper.css";
+
 .viewerCla img {
   display: none;
 }
+
 .Img {
   position: fixed;
   top: 0;
@@ -121,30 +107,36 @@ export default {
   height: 100%;
   background-image: url("../../../assets/img/Goods/GoodsBac.png");
   background-size: 100% 100%;
+
   .swiper-pagination {
     width: 100%;
     bottom: 40px;
   }
+
   /deep/.swiper-pagination-bullet {
     margin: 0 4px;
     background-color: #930909;
   }
+
   .txt {
     position: absolute;
     top: 44px;
     left: 40px;
     width: 300px;
+
     h3 {
       font-size: 20px;
       color: #930909;
       line-height: 28px;
     }
+
     p {
       font-size: 16px;
       color: #666666;
       margin: 15px 0;
     }
   }
+
   .close {
     position: absolute;
     width: 60px;
@@ -155,6 +147,7 @@ export default {
     background-image: url("../../../assets/img/Goods/close2.png");
     background-size: 100% 100%;
   }
+
   .imgMain {
     position: absolute;
     top: 50%;
@@ -162,6 +155,7 @@ export default {
     transform: translate(-50%, -50%);
     width: 1400px;
     height: 600px;
+
     .swiper-button-next {
       outline: none;
       width: 40px;
@@ -170,6 +164,7 @@ export default {
       background-size: 100% 100%;
       color: transparent;
     }
+
     .swiper-button-prev {
       outline: none;
       width: 40px;
@@ -179,6 +174,7 @@ export default {
       color: transparent;
     }
   }
+
   .imgMain2 {
     position: absolute;
     top: 50%;
@@ -187,21 +183,25 @@ export default {
     width: 1400px;
     height: 600px;
     text-align: center;
-    & > img {
+
+    &>img {
       cursor: pointer;
       width: 900px;
       height: 600px;
       object-fit: cover;
     }
   }
+
   .swiper-container {
     width: 900px;
     height: 600px;
     margin: 0 auto;
+
     .swiper-slide {
       width: 900px;
       height: 600px;
-      & > img {
+
+      &>img {
         cursor: pointer;
         width: 100%;
         height: 100%;

+ 2 - 3
vue/src/views/Goods/components/Three.vue

@@ -82,10 +82,9 @@
           <h3>{{ info.name }}</h3>
           <p v-show="info.age">年代:{{ info.age }}</p>
           <p v-show="info.sort">类别:{{ info.sort }}</p>
+          <p v-show="info.size">尺寸:<span v-html="info.size"></span></p>
           <p v-show="info.grain">质地:{{ info.grain }}</p>
-          <p v-show="info.long">长:{{ info.long }}cm</p>
-          <p v-show="info.width">宽:{{ info.width }}cm</p>
-          <p v-show="info.tall">高:{{ info.tall }}cm</p>
+          <p v-show="info.estate">级别:{{ info.estate }}</p>
         </div>
         <div
           class="close"

+ 3 - 3
vue/src/views/Goods/components/Tow.vue

@@ -5,10 +5,10 @@
       <div
         class="row"
         @click="lookInfo(item)"
-        v-for="(item, index) in handlData[acInd]"
-        :key="index"
+        v-for="(item) in handlData[acInd]"
+        :key="item.bs"
       >
-        <div v-if="item.imgNum">
+        <div v-if="item.imgNum>1">
           <img v-lazy="`goodsData/2D/${item.bs}_1.JPG`" alt="" />
         </div>
         <div v-else><img v-lazy="`goodsData/2D/${item.bs}.JPG`" alt="" /></div>

文件差异内容过多而无法显示
+ 639 - 551
vue/src/views/Goods/data.js


+ 73 - 78
vue/src/views/Goods/index.vue

@@ -5,53 +5,32 @@
     <!-- 左侧搜索 -->
     <div class="leftTop">
       <div class="model">
-        <div
-          class="row1"
-          @click="model = '3D'"
-          :class="{ active: model === '3D' }"
-        >
+        <div class="row1" @click="model = '3D'" :class="{ active: model === '3D' }">
           <div class="rowll"></div>
-          <div class="rowrr">三维文物</div>
+          <div class="rowrr">三维展示</div>
         </div>
-        <div
-          class="row1"
-          @click="model = '2D'"
-          :class="{ active: model === '2D' }"
-        >
+        <div class="row1" @click="model = '2D'" :class="{ active: model === '2D' }">
           <div class="rowll"></div>
-          <div class="rowrr">二维文物</div>
+          <div class="rowrr">二维展示</div>
         </div>
       </div>
       <div class="type">
         <div class="typell">类型:</div>
         <div class="typerr">
-          <div
-            class="row"
-            @click="genre = item.type"
-            :class="{ active: item.type === genre }"
-            v-for="(item, index) in genreList"
-            :key="index"
-          >
+          <div class="row" v-show="model === '2D' || item.type !== 'straw'" @click="genre = item.type"
+            :class="{ active: item.type === genre }" v-for="(item) in genreList" :key="item.bs">
             {{ item.name }}
           </div>
-          <div
-            class="row"
-            @click="genre = 'Italy'"
-            :class="{ active: 'Italy' === genre }"
-            v-if="model === '2D'"
-          >
-            油画
+          <div class="row" @click="genre = 'picture'" :class="{ active: 'picture' === genre }" v-if="model === '2D'">
+            照片
+          </div>
+          <div class="row" @click="genre = 'Italy'" :class="{ active: 'Italy' === genre }" v-if="model === '2D'">
+            字画
           </div>
         </div>
       </div>
       <div class="inputSearch" @keyup.enter="mySearch">
-        <input
-          class="searll"
-          autofocus
-          type="text"
-          v-model="txt"
-          placeholder="请输入文物名称"
-        />
+        <input class="searll" autofocus type="text" v-model="txt" placeholder="请输入文物名称" />
         <div class="searrr" @click="mySearch">
           <img src="../../assets/img/Goods/search.svg" alt="" />
         </div>
@@ -60,38 +39,16 @@
 
     <!-- 右侧图标 -->
     <div class="rightTop">
-      <div
-        class="row"
-        @click="rightClisk(item.type)"
-        v-for="item in rightList"
-        :key="item.type"
-        :class="{
-          active2:
-            (music && item.type === 2) ||
-            (like && item.type === 3) ||
-            (share && item.type === 4),
-        }"
-      >
-        <img
-          :src="require(`@/assets/img/Goods/inco${item.type}Ac.png`)"
-          alt=""
-          v-if="music && item.type === 2"
-        />
-        <img
-          :src="require(`@/assets/img/Goods/inco${item.type}Ac.png`)"
-          alt=""
-          v-else-if="like && item.type === 3"
-        />
-        <img
-          :src="require(`@/assets/img/Goods/inco${item.type}Ac.png`)"
-          alt=""
-          v-else-if="share && item.type === 4"
-        />
-        <img
-          :src="require(`@/assets/img/Goods/inco${item.type}.png`)"
-          alt=""
-          v-else
-        />
+      <div class="row" @click="rightClisk(item.type)" v-for="item in rightList" :key="item.type" :class="{
+        active2:
+          (music && item.type === 2) ||
+          (like && item.type === 3) ||
+          (share && item.type === 4),
+      }">
+        <img :src="require(`@/assets/img/Goods/inco${item.type}Ac.png`)" alt="" v-if="music && item.type === 2" />
+        <img :src="require(`@/assets/img/Goods/inco${item.type}Ac.png`)" alt="" v-else-if="like && item.type === 3" />
+        <img :src="require(`@/assets/img/Goods/inco${item.type}Ac.png`)" alt="" v-else-if="share && item.type === 4" />
+        <img :src="require(`@/assets/img/Goods/inco${item.type}.png`)" alt="" v-else />
         <transition name="likeAddAnimate">
           <div class="likeMove" v-show="like && item.type === 3">+ 1</div>
         </transition>
@@ -205,7 +162,7 @@ export default {
       }
     },
     rightClisk(type) {
-      if (type === 1) this.$router.replace("/");
+      if (type === 1) this.$router.replace("/Home");
       if (type === 2) this.music = !this.music;
       if (type === 3) {
         if (this.like) return;
@@ -240,18 +197,18 @@ export default {
     },
   },
   //生命周期 - 创建完成(可以访问当前this实例)
-  created() {},
+  created() { },
   //生命周期 - 挂载完成(可以访问DOM元素)
   mounted() {
     this.data = goodsData[this.model];
   },
-  beforeCreate() {}, //生命周期 - 创建之前
-  beforeMount() {}, //生命周期 - 挂载之前
-  beforeUpdate() {}, //生命周期 - 更新之前
-  updated() {}, //生命周期 - 更新之后
-  beforeDestroy() {}, //生命周期 - 销毁之前
-  destroyed() {}, //生命周期 - 销毁完成
-  activated() {}, //如果页面有keep-alive缓存功能,这个函数会触发
+  beforeCreate() { }, //生命周期 - 创建之前
+  beforeMount() { }, //生命周期 - 挂载之前
+  beforeUpdate() { }, //生命周期 - 更新之前
+  updated() { }, //生命周期 - 更新之后
+  beforeDestroy() { }, //生命周期 - 销毁之前
+  destroyed() { }, //生命周期 - 销毁完成
+  activated() { }, //如果页面有keep-alive缓存功能,这个函数会触发
 };
 </script>
 <style lang='less' scoped>
@@ -259,16 +216,19 @@ export default {
 .likeAddAnimate-leave-active {
   transition: all 2s ease;
 }
+
 .likeAddAnimate-enter,
 .likeAddAnimate-leave {
   transform: translateY(0) scale(0);
   opacity: 0;
 }
+
 .likeAddAnimate-enter-to,
 .likeAddAnimate-leave-to {
   transform: translateY(-30px) scale(1.2);
   opacity: 1;
 }
+
 .Goods {
   padding-top: 140px;
   width: 100%;
@@ -276,12 +236,14 @@ export default {
   background-image: url("../../assets/img/Goods/GoodsBac.png");
   background-size: 100% 100%;
   position: relative;
+
   .leftTop {
     position: absolute;
     top: 42px;
     left: 160px;
     height: 40px;
     display: flex;
+
     .model {
       color: #fff;
       width: 260px;
@@ -292,12 +254,14 @@ export default {
       justify-content: space-between;
       padding: 0 22px;
       margin-right: 50px;
+
       .row1 {
         cursor: pointer;
         display: flex;
         justify-content: center;
         align-items: center;
         font-size: 16px;
+
         .rowll {
           margin-right: 6px;
           width: 24px;
@@ -306,12 +270,15 @@ export default {
           border: 1px solid #d8b275;
           position: relative;
         }
+
         .rowrr {
           padding-bottom: 2px;
         }
       }
+
       .active {
         color: #d8b275;
+
         .rowll {
           &::after {
             content: "";
@@ -327,6 +294,7 @@ export default {
         }
       }
     }
+
     .type {
       display: flex;
       font-size: 16px;
@@ -336,21 +304,26 @@ export default {
       border-radius: 20px;
       padding: 0 20px;
       margin-right: 50px;
+
       .typell {
         width: 50px;
         line-height: 38px;
       }
+
       .typerr {
         display: flex;
         align-items: center;
         padding-bottom: 4px;
+
         .row {
           cursor: pointer;
           margin: 0 10px;
         }
+
         .active {
           color: #d8b275;
           position: relative;
+
           &::after {
             content: "";
             position: absolute;
@@ -363,6 +336,7 @@ export default {
         }
       }
     }
+
     .inputSearch {
       overflow: hidden;
       display: flex;
@@ -372,16 +346,19 @@ export default {
       height: 40px;
       border-radius: 20px;
       display: flex;
+
       .searll {
         width: 214px;
         height: 40px;
         border: none;
         background-color: #fff;
         padding: 0 10px 0 20px;
+
         &:focus {
           outline: none;
         }
       }
+
       .searrr {
         cursor: pointer;
         background-color: #930909;
@@ -390,6 +367,7 @@ export default {
         justify-content: center;
         align-items: center;
         padding-right: 4px;
+
         img {
           width: 24px;
           height: 24px;
@@ -397,21 +375,25 @@ export default {
       }
     }
   }
+
   .rightTop {
     position: absolute;
     top: 32px;
     right: 140px;
     height: 60px;
     display: flex;
+
     .row {
       position: relative;
       cursor: pointer;
       width: 50px;
       text-align: center;
       margin-left: 24px;
-      & > img {
+
+      &>img {
         width: 50px;
       }
+
       .likeMove {
         color: #930909;
         position: absolute;
@@ -420,22 +402,27 @@ export default {
         text-align: center;
       }
     }
+
     .active2 {
       color: #930909;
     }
   }
+
   .nullSerach {
     width: 100%;
     height: 90%;
     display: flex;
     justify-content: center;
     align-items: center;
-    & > div {
+
+    &>div {
       width: 240px;
-      & > img {
+
+      &>img {
         width: 100%;
       }
-      & > p {
+
+      &>p {
         text-align: center;
         color: #666666;
         font-size: 24px;
@@ -443,6 +430,7 @@ export default {
       }
     }
   }
+
   .shareBox {
     z-index: 11;
     position: absolute;
@@ -454,6 +442,7 @@ export default {
     pointer-events: none;
     backdrop-filter: blur(4px);
     transition: opacity 0.5s;
+
     .shareMain {
       padding: 40px 30px 0;
       position: absolute;
@@ -465,6 +454,7 @@ export default {
       background-image: url("../../assets/img/Goods/shareBac.png");
       background-size: 100% 100%;
       text-align: center;
+
       .close {
         width: 48px;
         height: 48px;
@@ -475,21 +465,25 @@ export default {
         background-image: url("../../assets/img/Goods/shareClose.png");
         background-size: 100% 100%;
       }
+
       h3 {
         text-align: left;
         color: #d8b275;
         font-size: 24px;
         margin-bottom: 50px;
       }
+
       p {
         font-size: 20px;
         color: #ffffff;
         margin-bottom: 40px;
       }
+
       img {
         width: 240px;
         margin-bottom: 50px;
       }
+
       .btnn {
         cursor: pointer;
         width: 280px;
@@ -503,6 +497,7 @@ export default {
       }
     }
   }
+
   .shareBoxShow {
     opacity: 1;
     pointer-events: auto;