视频播放列表更新,增加分享海报生成

This commit is contained in:
2025-01-10 18:24:40 +08:00
parent df3bc23cfc
commit 4a141878f2
34 changed files with 3399 additions and 1752 deletions

View File

@@ -3,6 +3,7 @@
<video class="u-flex-1 video" :show-fullscreen-btn="false" @controlstoggle="controlstoggles" v-if="showVideo"
@waiting="waiting()" object-fit="cover"
@pause="onpause"
@play="videoPlay('myVideo'+item.courseDetailsId,item.courseDetailsId)" :play-strategy="2"
:show-loading="true" codec="software" :muted="false" :show-center-play-btn="true" :loop="false"
:enable-progress-gesture="false" :poster="item.titleImg" :ref="'myVideo'+item.courseDetailsId"
@@ -11,7 +12,7 @@
<image class="poster" v-else @click="!item.videoUrl?popupShow('pay'):''" :src="item.titleImg" mode="aspectFill">
</image>
<view class="info" v-if="!isCommand">
<view class="info" v-if="!isCommand" :style="infoStyle">
<text class="color-fff" v-if="item.courseDetailsName">{{item.courseDetailsName}}</text>
<view v-if="item.content" v-html="item.content"></view>
<view class="u-m-t-20 color-fff" @click="popupShow('show')">
@@ -21,7 +22,7 @@
</view>
</view>
<view class="info" v-if="isCommand">
<view class="info" v-if="isCommand" :style="infoStyle">
<text class="color-fff" v-if="item.courseDetailsName">{{item.courseDetailsName}}</text>
<view v-if="item.content" v-html="item.content"></view>
<view class="u-m-t-20 color-fff" @click="toDetail">
@@ -31,7 +32,7 @@
</view>
</view>
<view class="right">
<view class="right" :style="rightStyle">
<view class="love u-flex u-flex-xy-center u-flex-col u-m-b-40 u-text-center" @click="dianzanClick">
<up-icon name="heart-fill" v-if="item.isGood==1" color="red" size="30"></up-icon>
<up-icon name="heart-fill" v-else color="#ffffff" size="30"></up-icon>
@@ -69,6 +70,22 @@
}
}
},
rightStyle:{
type:Object,
default:()=>{
return {
}
}
},
infoStyle:{
type:Object,
default:()=>{
return {
}
}
},
isCommand: {
type: Boolean,
default: false
@@ -106,6 +123,10 @@
playSpeeds: {
type: Number,
default: 1
},
showControls:{
type: Boolean,
default: true
}
})
let autoplay = ref(props.item.videoUrl ? true : false)
@@ -115,6 +136,7 @@
])
function controlstoggles(e) {
console.log(e);
emits('controlstoggles', e)
}
@@ -130,7 +152,20 @@
}
function videoPlay() {
// #ifdef H5
emits('controlstoggles', {
detail:{show:true}
})
// #endif
}
function onpause(){
// #ifdef H5
emits('controlstoggles', {
detail:{show:false}
})
// #endif
}
function ended() {
@@ -211,6 +246,7 @@
video = null
}
})
</script>
<style lang="scss" scoped>
@@ -279,6 +315,7 @@
color: #ffffff;
font-size: 15px;
z-index: 9999;
transition: all .3s ease-in-out;
}
.u-flex-y-center {
@@ -293,6 +330,7 @@
}
.right {
transition: all .3s ease-in-out;
position: absolute !important;
right: 20rpx;
/* #ifdef H5 */