fix: 视频链接第一次错误后再填写链接无法立即显示

Co-authored-by: wangjiahao <1522128093@qq.com>
This commit is contained in:
fit2cloudrd 2022-04-05 19:00:53 +08:00 committed by GitHub
parent 00c3d57288
commit 3950349308
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 27 additions and 11 deletions

View File

@ -43,6 +43,7 @@
import { mapState } from 'vuex'
import { deepCopy } from '@/components/canvas/utils/utils'
import { checkAddHttp } from '@/utils/urlUtils'
import bus from "@/utils/bus";
export default {
props: {
@ -88,6 +89,7 @@ export default {
this.linkInfoTemp[this.linkInfoTemp.videoType].sources[0].src = checkAddHttp(this.linkInfoTemp[this.linkInfoTemp.videoType].sources[0].src)
this.curComponent.videoLinks = this.linkInfoTemp
this.$store.state.styleChangeTimes++
bus.$emit('videoLinksChange-' + this.curComponent.id)
this.popoverClose()
},
onClose() {

View File

@ -42,7 +42,8 @@ export default {
data() {
return {
pOption: this.element.streamMediaLinks[this.element.streamMediaLinks.videoType],
flvPlayer: null
flvPlayer: null,
videoShow: true
}
},
@ -70,7 +71,13 @@ export default {
mounted() {
this.initOption()
bus.$on('streamMediaLinksChange-' + this.element.id, () => {
this.initOption()
this.pOption = this.element.streamMediaLinks[this.element.streamMediaLinks.videoType],
this.flvPlayer = null,
this.videoShow = false
this.$nextTick(() => {
this.videoShow = true
this.initOption()
})
})
},
methods: {

View File

@ -2,12 +2,12 @@
<el-row ref="mainPlayer">
<div v-if="element.videoLinks[element.videoLinks.videoType].sources[0].src" class="player">
<video-player
v-if="showVideo"
ref="videoPlayer"
class="vjs-custom-skin"
:options="editMode==='preview'?pOption:playerOptions"
:playsinline="true"
@play="onPlayerPlay($event)"
@pause="onPlayerPause($event)"
@ended="onPlayerEnded($event)"
@loadeddata="onPlayerLoadeddata($event)"
@waiting="onPlayerWaiting($event)"
@ -29,6 +29,7 @@
// custom skin css
import '@/custom-theme.css'
import { mapState } from 'vuex'
import bus from '@/utils/bus'
// import SWF_URL from 'videojs-swf/dist/video-js.swf'
export default {
@ -59,7 +60,8 @@ export default {
},
data() {
return {
pOption: {}
pOption: {},
showVideo: true
}
},
@ -83,15 +85,22 @@ export default {
'canvasStyleData'
])
},
created() {
this.initOption()
},
watch: {
h(newVal, oldVla) {
this.initOption()
}
},
created() {
this.initOption()
},
mounted() {
bus.$on('videoLinksChange-' + this.element.id, () => {
this.showVideo = false
this.$nextTick(() => {
this.showVideo = true
this.initOption()
})
})
},
methods: {
initOption() {
@ -102,9 +111,6 @@ export default {
onPlayerPlay(player) {
// console.log('player play!', player)
},
onPlayerPause(player) {
// console.log('player pause!', player)
},
onPlayerEnded(player) {
// console.log('player ended!', player)
},

View File

@ -77,7 +77,8 @@ export const VIDEOLINKS = {
remainingTimeDisplay: false,
currentTimeDisplay: false, // 当前时间
volumeControl: false, // 声音控制键
fullscreenToggle: false
fullscreenToggle: false,
pause: false
},
sources: [{
}]