视频一直加载中 重新渲染

merge-requests/1/head
dydwang 4 years ago
parent cdcca5137f
commit 2b7b88e727

@ -10,7 +10,6 @@
<link href="/video_play_plugins/video-js-cdn.min.css" rel="stylesheet"> <link href="/video_play_plugins/video-js-cdn.min.css" rel="stylesheet">
<script src="/video_play_plugins/video.js"></script> <script src="/video_play_plugins/video.js"></script>
<script src="/video_play_plugins/videojs-contrib-hls.min.js"></script> <script src="/video_play_plugins/videojs-contrib-hls.min.js"></script>
<title>垛机视觉系统</title> <title>垛机视觉系统</title>
</head> </head>

File diff suppressed because one or more lines are too long

@ -8,6 +8,10 @@
@playing="onPlayerPlaying" @playing="onPlayerPlaying"
@timeupdate="onPlayerTimeupdate" @timeupdate="onPlayerTimeupdate"
@ended="onPlayerEnded" @ended="onPlayerEnded"
@error="onError"
@emptied="onEmptied"
@statechanged="playerStateChanged"
@loadeddata="onPlayerLoadeddata"
/> />
</template> </template>
@ -29,6 +33,8 @@ export default {
}, },
data() { data() {
return { return {
timer: null, //
currentTime: 0, //
showVideo: true, showVideo: true,
isPlay: false, // isPlay: false, //
playerOptions: { playerOptions: {
@ -68,28 +74,64 @@ export default {
onPlayerPause() { onPlayerPause() {
this.isPlay && this.$emit('showModel'); this.isPlay && this.$emit('showModel');
// this.isPlay = false; // this.isPlay = false;
console.log('onPlayerPause');
}, },
// //
onPlayerPlaying(...args) { onPlayerPlaying(...args) {
this.isPlay = true; this.isPlay = true;
console.log('onPlayerPlaying');
}, },
// //
onPlayerEnded($event) { onPlayerEnded($event) {
this.isPlay = false; this.isPlay = false;
console.log('onPlayerEnded');
}, },
// onTimer() {
onPlayerTimeupdate($event) { this.timer && clearTimeout(this.timer);
const bufferedEnd = $event.bufferedEnd(); this.timer = setTimeout(() => {
const currentTime = $event.currentTime(); this.onloadVideo();
// }, 8 * 1000)
const differTime = bufferedEnd - currentTime },
// onloadVideo() {
if(differTime > 60) { console.log('重新加载了');
const videoRef = this.$refs['video-player'];
console.log(videoRef);
this.showVideo = false; this.showVideo = false;
this.$nextTick(() => { this.$nextTick(() => {
this.showVideo = true; this.showVideo = true;
}) })
},
onError(data) {
console.log('onError');
console.log(data);
},
onEmptied(data) {
console.log('onEmptied');
console.log(data);
},
onPlayerLoadeddata($event) {
console.log('onPlayerLoadeddata')
},
playerStateChanged(playerCurrentState) {
//
if(playerCurrentState.waiting) {
// this.onTimer();
}else {
this.timer && clearTimeout(this.timer);
} }
// console.log('player current update state', playerCurrentState)
},
//
onPlayerTimeupdate($event) {
//
const bufferedEnd = $event.bufferedEnd();
//
const currentTime = $event.currentTime();
this.currentTime = currentTime;
// this.onTimer();
//
const differTime = bufferedEnd - currentTime;
} }
} }
} }
@ -107,5 +149,9 @@ export default {
.vjs-control-bar { .vjs-control-bar {
display: none !important; display: none !important;
} }
//
.vjs-loading-spinner {
// display: none;
}
} }
</style> </style>

Loading…
Cancel
Save