-
+
+

+
@@ -20,7 +23,8 @@ import {
onMounted,
watchEffect,
reactive,
- onUnmounted
+ onUnmounted,
+ ref
} from '@vue/composition-api'
export default defineComponent({
@@ -32,6 +36,7 @@ export default defineComponent({
}
},
setup(props, { emit }) {
+ const ready = ref(false)
const chilledcow = reactive<{ video: Plyr | null }>({
video: null
})
@@ -48,7 +53,7 @@ export default defineComponent({
}
}
- onMounted(() => {
+ const init = () => {
chilledcow.video = new Plyr('#player', {
youtube: {
noCookie: true,
@@ -62,16 +67,21 @@ export default defineComponent({
options: [240]
}
})
+ chilledcow.video.on('error', init)
chilledcow.video.on('play', onPlay)
chilledcow.video.on('pause', onPause)
chilledcow.video.on('ready', () => {
+ ready.value = true
if (props.play) {
chilledcow.video?.play()
}
})
- })
+ }
+
+ onMounted(init)
onUnmounted(() => {
+ chilledcow.video?.off('error', init)
chilledcow.video?.off('play', onPlay)
chilledcow.video?.off('pause', onPause)
chilledcow.video?.destroy()
@@ -80,6 +90,25 @@ export default defineComponent({
watchEffect(() => {
props.play ? chilledcow.video?.play() : chilledcow.video?.pause()
})
+
+ return {
+ ready
+ }
}
})
+
+
diff --git a/src/components/ZoneMusic.vue b/src/components/ZoneMusic.vue
index 0c5b1bd..13cc03e 100644
--- a/src/components/ZoneMusic.vue
+++ b/src/components/ZoneMusic.vue
@@ -2,7 +2,9 @@
@@ -52,7 +65,13 @@ export default defineComponent({