Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Hooke
/
tswj
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
hookehuyr
2022-04-25 15:36:50 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
831ade8f4a18518e781d53112224a00dcfdbed0d
831ade8f
1 parent
b7cbf8dc
✨ feat(书籍详情页,视频列表播放全屏优化,细节优化):
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
69 additions
and
50 deletions
src/views/client/bookDetail.vue
src/views/client/bookDetail.vue
View file @
831ade8
...
...
@@ -22,53 +22,56 @@
</div>
</div>
<div class="book-video-title">
<van-row>
<van-col span="12">
作品演绎
<div style="background-color: #F9D95C; width: 70px; height: 4px;"></div>
</van-col>
<van-col span="12">
<div style="font-size: 1rem; color: #999999; text-align: right;">
<van-icon :name="icon_video" />
54个作品
</div>
</van-col>
</van-row>
</div>
<div class="book-video-language">
<van-row>
<van-col span="6">
<div @click="toggleLanguage" :class="[check_mandarin ? 'checked' : 'uncheck']">普通话</div>
</van-col>
<van-col span="6">
<div @click="toggleLanguage" :class="[check_localism ? 'checked' : 'uncheck']">方言</div>
</van-col>
<van-col span="12" v-if="check_localism" @click="showPicker = true">
<div class="choose-wrapper">
<div class="text">
{{ chooseLanguage.text }}
<van-sticky>
<div class="book-video-title">
<van-row>
<van-col span="12">
作品演绎
<div style="background-color: #F9D95C; width: 70px; height: 4px;"></div>
</van-col>
<van-col span="12">
<div style="font-size: 1rem; color: #999999; text-align: right;">
<van-icon :name="icon_video" />
54个作品
</div>
<div class="icon">
<van-icon name="arrow-down" />
</van-col>
</van-row>
</div>
<div class="book-video-language">
<van-row>
<van-col span="6">
<div @click="toggleLanguage" :class="[check_mandarin ? 'checked' : 'uncheck']">普通话</div>
</van-col>
<van-col span="6">
<div @click="toggleLanguage" :class="[check_localism ? 'checked' : 'uncheck']">方言</div>
</van-col>
<van-col span="12" v-if="check_localism" @click="showPicker = true">
<div class="choose-wrapper">
<div class="text">
{{ chooseLanguage.text }}
</div>
<div class="icon">
<van-icon name="arrow-down" />
</div>
</div>
</
div
>
</van-
col
>
</van-row
>
<van-popup v-model:show="showPicker" round position="bottom">
<van-picker
:columns="columns
"
:columns-field-names="{ text: 'text', value: 'val', children: 'children' }
"
@cancel="showPicker = false
"
@confirm="onConfirm"
/
>
</
van-popup
>
</
div
>
</
van-col
>
</van-
row
>
<van-popup v-model:show="showPicker" round position="bottom"
>
<van-picker
:columns="columns"
:columns-field-names="{ text: 'text', value: 'val', children: 'children' }
"
@cancel="showPicker = false
"
@confirm="onConfirm
"
/>
</van-popup
>
</
div
>
</
van-sticky
>
<div class="book-video-list">
<van-list v-model:loading="loading" :finished="finished" finished-text="没有更多了" @load="onLoad">
<div v-for="item in list" :key="item" style="height: 3rem;">{{ item }}</div>
<template v-for="item in dataList" :key="item" style="height: 3rem;">
<video-card :item="item"></video-card>
</template>
</van-list>
</div>
</div>
...
...
@@ -91,7 +94,10 @@
</template>
<script setup>
import dataList from '@/mock/video_list'
import MyButton from '@/components/MyButton/index.vue'
import VideoCard from '@/components/VideoCard/index.vue'
import icon_video from '@images/video.png'
import icon_up from '@images/icon-guanbi@2x.png'
...
...
@@ -105,6 +111,7 @@ import { ref, reactive, onMounted } from 'vue'
import { useRoute, useRouter } from 'vue-router'
import axios from '@/utils/axios';
import $ from 'jquery'
import _ from 'lodash'
import { Toast } from 'vant';
const $route = useRoute();
const $router = useRouter();
...
...
@@ -220,6 +227,10 @@ const uploadVideo = () => {
<script>
import mixin from 'common/mixin';
function transCaseList (url, pic) {
return { url, pic }
}
export default {
mixins: [mixin.init],
data() {
...
...
@@ -227,11 +238,17 @@ export default {
}
},
moun
ted() {
crea
ted() {
this.getList()
},
methods: {
getList () {
_.each(this.dataList, item => {
let video = item.video && item.video.url ? item.video.url : 'http://static.smartisanos.cn/common/video/t1-ui.mp4';
let cover = item.cover && item.cover.url ? item.cover.url : 'http://static.smartisanos.cn/pr/img/video/video_03_cc87ce5bdb.jpg';
item.options = { video: transCaseList(video, cover), autoplay: false, preload: 'none' }
})
}
}
}
</script>
...
...
@@ -240,11 +257,12 @@ export default {
@import url('@css/content-bg.less');
.book-detail-page {
overflow: auto;
//
overflow: auto;
.book-detail {
margin: 1rem;
margin-top: 1.25rem;
// margin-top: 1.25rem;
margin-top: 0;
padding-top: 1rem;
border-radius: 10px;
background-color: rgba(255, 255, 255, 1);
...
...
@@ -278,7 +296,7 @@ export default {
.book-video-language {
padding: 1rem;
background-color: white;
.uncheck {
background: #F7F7F7;
border-radius: 15px;
...
...
@@ -320,12 +338,13 @@ export default {
}
.book-video-list {
height: 20rem;
overflow: scroll;
//
height: 20rem;
//
overflow: scroll;
}
}
.book-bar {
z-index: 999;
position: fixed;
right: 0;
bottom: 0;
...
...
Please
register
or
login
to post a comment