康凯
2022-05-23 ef6159d225ce3c085031b7670e651c367dc6cb9b
src/views/personage/detail.vue
@@ -6,7 +6,7 @@
        <div class="title-introduce">{{ titleIntroduce }}</div>
      </div>
      <div class="title-right">
        <div class="online-preview" @click="OnlinePreview(basisInfo.file)">在线浏览</div>
<!--        <div class="online-preview" @click="OnlinePreview(basisInfo.file)">在线浏览</div>-->
      </div>
    </div>
    <div class="content">
@@ -27,7 +27,9 @@
          </div>
        </mt-tab-container-item>
        <mt-tab-container-item id="2">
          <CustomSearch3 v-on:search="SearchImages"></CustomSearch3>
          <div class="search-div">
            <CustomSearch3 v-on:search="SearchImages"></CustomSearch3>
          </div>
          <div class="content-images"
               v-infinite-scroll="NextImages"
               :infinite-scroll-disabled="images.scrollDisabled"
@@ -41,26 +43,35 @@
              </div>
              <div class="item-name">{{ item.name }}</div>
            </div>
                  <div v-if="images.data.length <= 0" style="width: 100%;height: 100%;display: flex;justify-content: center;align-items: center;font-size: 16px;">
                     <span>暂无数据</span>
                  </div>
          </div>
        </mt-tab-container-item>
        <mt-tab-container-item id="3">
          <CustomSearch3 v-on:search="SearchVideos"></CustomSearch3>
          <div class="search-div">
            <CustomSearch3 v-on:search="SearchVideos"></CustomSearch3>
          </div>
          <div class="content-videos"
               v-infinite-scroll="NextVideos"
               :infinite-scroll-disabled="videos.scrollDisabled"
               :infinite-scroll-distance="10">
            <div class="content-item"
                 v-for="item in videos.data"
                 :key="item.id"
                 @click="ToVideoDetail(item.id)">
              <div class="item-left">
                <img :src="item.cover"/>
            <template v-for="item in videos.data">
              <div class="content-item" :key="item.key" @click="ToVideoDetail(item.id)">
                <div class="item-left">
                  <img :src="item.cover" v-if="item.cover"/>
                  <img src="@/assets/defaultCover.png" v-else/>
                </div>
                <div class="item-right">
                  <div class="item-name">{{ item.name }}</div>
                  <div class="item-introduce">{{ item.description }}</div>
                </div>
              </div>
              <div class="item-right">
                <div class="item-name">{{ item.name }}</div>
                <div class="item-introduce">{{ item.description }}</div>
              </div>
            </div>
              <div class="line" :key="item.key"></div>
            </template>
                  <div v-if="videos.data.length <= 0" style="width: 100%;height: 100%;display: flex;justify-content: center;align-items: center;font-size: 16px;">
                     <span>暂无数据</span>
                  </div>
          </div>
        </mt-tab-container-item>
      </mt-tab-container>
@@ -117,7 +128,8 @@
          window.open(fileUrl);
        } else {
          //https://view.officeapps.live.com/op/view.aspx?src=
          window.open("http://www.xdocin.com/xdoc?_func=to&_format=html&_cache=1&_xdoc=" + fileUrl.replace(/\\/g, ''));
          //http://www.xdocin.com/xdoc?_func=to&_format=html&_cache=1&_xdoc=
          window.open("https://view.officeapps.live.com/op/view.aspx?src=" + fileUrl.replace(/\\/g, ''));
        }
      }
    },
@@ -200,14 +212,14 @@
    },
    ToImageDetail: function (id) {
      let objId = this.$route.query.id;
      this.$router.push({name: "personage-detail-image", query: {id: id, objId: objId}});
      this.$router.push({name: "scenery-detail-image", query: {id: id, objId: objId}});
    },
    ToVideoDetail: function (id) {
      let objId = this.$route.query.id;
      this.$router.push({name: "personage-detail-video", query: {id: id, objId: objId}});
      this.$router.push({name: "scenery-detail-video", query: {id: id, objId: objId}});
    },
    ToListPage: function () {
      this.$router.push({name: "personage-list"})
      this.$router.push({name: "scenery-list"})
    },
  },
  watch: {
@@ -239,6 +251,12 @@
</script>
<style scoped>
.line {
  width: 100%;
  border: 1px solid #EEEEEE;
  margin: 3vh 0;
}
.data-detail {
  width: 100%;
}
@@ -323,35 +341,62 @@
}
.data-detail .content {
  width: 90%;
  height: 84.1vh;
  margin-left: 5%;
  border-radius: 30px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  min-height: 84vh;
  background: #F8F8F8;
}
.mint-navbar {
  width: 100%;
}
.mint-navbar /deep/ .mint-tab-item{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 7px 0;
}
.mint-navbar /deep/ .mint-tab-item-label {
  width: 8rem;
  font-size: 2rem;
  font-family: Source Han Sans CN;
  font-weight: 500;
  line-height: 2rem;
  color: #767676;
  opacity: 1;
  padding: 10px 0;
}
.mint-navbar /deep/ .is-selected {
  color: #BC0000;
  border-bottom: 0.3vh solid #BC0000;
  border-bottom: 0px;
}
.mint-navbar /deep/ .is-selected .mint-tab-item-label {
  color: #BC0000;
  border-bottom: 0.3vh solid #BC0000;
}
.mint-tab-container {
  width: 100%;
}
.mint-tab-container /deep/ .mint-tab-container-item:nth-child(1) {
  padding-top: 5vh;
}
.content-keyword {
  margin-top: 1vh;
  padding: 5%;
  background: #FFFFFF;
  text-align: left;
  font-size: 1.87rem;
  font-family: Source Han Serif CN;
@@ -372,6 +417,10 @@
}
.content-introduction {
  margin-top: 1vh;
  padding: 5% 5% 15% 5%;
  border-radius: 0 0 30px 30px;
  background: #FFFFFF;
  text-align: left;
  font-size: 1.87rem;
  font-family: Source Han Serif CN;
@@ -392,11 +441,12 @@
}
.mint-tab-container /deep/ .mint-tab-container-item:nth-child(2) {
  padding-top: 2vh;
}
.custom-search3 {
  margin-bottom: 2vh;
.search-div {
  background: #FFFFFF;
  padding: 5%;
  margin-bottom: 1vh;
}
.content-images {
@@ -405,9 +455,22 @@
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  align-content:flex-start;
  height: 65vh;
  overflow: scroll;
  padding-top: 2vh;
  background: #FFFFFF;
  border-radius: 0 0 30px 30px;
}
.content-images .content-item {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 50%;
  height: 25vh;
}
@@ -442,14 +505,26 @@
}
.mint-tab-container /deep/ .mint-tab-container-item:nth-child(3) {
  padding-top: 2vh;
}
.content-videos {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
   width: 100%;
  height: 65vh;
  overflow: scroll;
  padding-top: 4vh;
  background: #FFFFFF;
  border-radius: 0 0 30px 30px;
}
.content-videos .line{
  width: 90%;
}
.content-videos .content-item {
@@ -460,7 +535,7 @@
  align-items: center;
  height: 10vh;
  margin: 2vh auto;
  width: 90%;
}
.content-videos .item-left {