mall_client/zyhs3_uniapp/pages/interaction/components/video.vue

74 lines
1.2 KiB
Vue
Raw Permalink Normal View History

2026-03-13 07:50:35 +00:00
<template>
<view>
<video
ref="myVideo"
id="myVideo"
:src="src"
:controls="false"
loop
autoplay
style="width: 750rpx;"
:style="{height: screenHeight + 'px'}"
@play="onplay"
@error="onerror"
@timeupdate="timeupdate"
:show-play-btn="true"
:show-center-play-btn="false"
:enable-progress-gesture="false"
:enable-play-gesture="false"
:vslide-gesture="false"
:vslide-gesture-in-fullscreen="false">
</video>
</view>
</template>
<script>
export default {
name: "video",
props: {
screenHeight: {
default: 0
},
src: {
default: false
},
playStatus: {
default: false
}
},
data() {
return {
}
},
watch: {
playStatus(val) {
if (!val) {
uni.createVideoContext('myVideo').pause();
} else {
uni.createVideoContext('myVideo').play();
}
}
},
methods: {
onplay: function(e) {
if (uni.getSystemInfoSync().platform == 'ios') {
this.$emit("play", 0.1);
}
},
onerror: function(err) {
console.log(err);
},
timeupdate: function(e) {
if (e.detail.currentTime > 0.2) {
this.$emit("play", e.detail.currentTime);
}
}
}
}
</script>
<style>
</style>