|
@@ -0,0 +1,179 @@
|
|
|
+<template>
|
|
|
+ <div class="base-container">
|
|
|
+ <fnHeader showDate hideSwitch></fnHeader>
|
|
|
+ <div class="content">
|
|
|
+ <div class="tool">
|
|
|
+ <div class="button" @click="goBack">
|
|
|
+ <img src="@/assets/images/common/back-icon.png" alt="" />
|
|
|
+ 返回
|
|
|
+ </div>
|
|
|
+ <div class="tool-right">
|
|
|
+ <el-date-picker
|
|
|
+ class="month-picker"
|
|
|
+ v-model="month"
|
|
|
+ type="month"
|
|
|
+ size="large"
|
|
|
+ format="YYYY/MM"
|
|
|
+ value-format="YYYY-MM"
|
|
|
+ :disabled-date="disabledDate"
|
|
|
+ />
|
|
|
+ <el-radio-group v-model="radio" size="large">
|
|
|
+ <el-radio-button label="远景" value="New York" />
|
|
|
+ <el-radio-button label="近景" value="Washington" />
|
|
|
+ </el-radio-group>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="video-list">
|
|
|
+ <div class="video-item" v-for="(item,index) in 20" :key="index" @click="handleVideo">
|
|
|
+ <div class="date">2025/04/14</div>
|
|
|
+ <div class="btn" :class="{active:index===0}">{{index===0?'已置顶':'设为置顶'}}</div>
|
|
|
+ <img class="play" src="@/assets/images/more/play.png" alt="">
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <Popup v-model:show="showPopup" class="video-popup">
|
|
|
+ <video
|
|
|
+ class="video-wrap"
|
|
|
+ controls
|
|
|
+ width="1280"
|
|
|
+ height="800"
|
|
|
+ >
|
|
|
+ <source src="@/assets/images/foster-home/work.mp4"/>
|
|
|
+ </video>
|
|
|
+ </Popup>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script setup>
|
|
|
+import fnHeader from "@/components/fnHeader.vue";
|
|
|
+import {ref} from 'vue'
|
|
|
+import { Popup } from 'vant';
|
|
|
+import { useRouter } from "vue-router";
|
|
|
+const router = useRouter();
|
|
|
+
|
|
|
+const month = ref('2025-04')
|
|
|
+const disabledDate = (time) => {
|
|
|
+ return time.getTime() > Date.now()
|
|
|
+}
|
|
|
+
|
|
|
+const radio = ref('New York')
|
|
|
+
|
|
|
+const list = ref([
|
|
|
+ {
|
|
|
+ isDefalut:1
|
|
|
+ }
|
|
|
+])
|
|
|
+
|
|
|
+const showPopup = ref(false)
|
|
|
+const handleVideo = () =>{
|
|
|
+ showPopup.value = true
|
|
|
+}
|
|
|
+
|
|
|
+const goBack = () =>{
|
|
|
+ router.go('-1')
|
|
|
+}
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="scss" scoped>
|
|
|
+.base-container {
|
|
|
+ width: 100%;
|
|
|
+ height: 100vh;
|
|
|
+ color: #fff;
|
|
|
+ box-sizing: border-box;
|
|
|
+ background: #000;
|
|
|
+ .content {
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ height: calc(100% - 74px);
|
|
|
+ padding: 16px 20px 0 20px;
|
|
|
+ box-sizing: border-box;
|
|
|
+ .tool{
|
|
|
+ padding-bottom: 24px;
|
|
|
+ border-bottom: 1px solid #444444;
|
|
|
+ margin-bottom: 24px;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ .button {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ border: 1px solid rgba(255, 255, 255, 0.78);
|
|
|
+ border-radius: 4px;
|
|
|
+ padding: 9px;
|
|
|
+ width: 104px;
|
|
|
+ cursor: pointer;
|
|
|
+ img {
|
|
|
+ width: 14px;
|
|
|
+ margin-right: 5px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .tool-right{
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ ::v-deep{
|
|
|
+ .month-picker{
|
|
|
+ margin-right: 16px;
|
|
|
+ }
|
|
|
+ .el-input__wrapper{
|
|
|
+ background: transparent;
|
|
|
+ box-shadow: none;
|
|
|
+ border: 1px solid rgba(255, 255, 255, 0.78);
|
|
|
+ }
|
|
|
+ .el-input__prefix,.el-input__inner{
|
|
|
+ color: #FFD489;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .video-list{
|
|
|
+ width: 100%;
|
|
|
+ height: calc(100% - 65px - 24px);
|
|
|
+ overflow-y: auto;
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: wrap;
|
|
|
+ .video-item{
|
|
|
+ width: 24.4%;
|
|
|
+ height: 290px;
|
|
|
+ border-radius: 8px;
|
|
|
+ background: url('@/assets/images/more/video.png') no-repeat center center /100% 100%;
|
|
|
+ position: relative;
|
|
|
+ margin: 0 12px 12px 0;
|
|
|
+ cursor: pointer;
|
|
|
+ &.video-item:nth-child(4n) {
|
|
|
+ margin-right: 0;
|
|
|
+ }
|
|
|
+ .date{
|
|
|
+ background: rgba(0, 0, 0, 0.6);
|
|
|
+ border-radius: 8px 0 8px 0;
|
|
|
+ padding: 4px 8px;
|
|
|
+ position: absolute;
|
|
|
+ }
|
|
|
+ .btn{
|
|
|
+ position: absolute;
|
|
|
+ right: 8px;
|
|
|
+ top: 8px;
|
|
|
+ background: rgba(0, 0, 0, 0.6);
|
|
|
+ border-radius: 4px;
|
|
|
+ padding: 4px 8px;
|
|
|
+ color: #FFD489;
|
|
|
+ &.active{
|
|
|
+ background:#FFD489;
|
|
|
+ color: #000;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .play{
|
|
|
+ width: 64px;
|
|
|
+ height: 64px;
|
|
|
+ position: absolute;
|
|
|
+ top: calc(50% - 32px);
|
|
|
+ left: calc(50% - 32px);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+.video-popup {
|
|
|
+ background: transparent;
|
|
|
+}
|
|
|
+</style>
|