Spaces:
Configuration error
Configuration error
<script setup> | |
import { ref, computed, onMounted } from "vue"; | |
const apiUrl = import.meta.env.VITE_BASE_URL; | |
const { videoName, startAt } = defineProps({ | |
videoName: String, | |
startAt: { | |
required: false, | |
type: Number, | |
}, | |
}); | |
const url = computed( | |
() => `${apiUrl}/api/video/stream?video_name=${videoName}` | |
// () => `http://baobao.com` | |
); | |
const video = ref(null); | |
const videoContainer = ref(null); | |
onMounted(() => { | |
if (startAt) video.value.currentTime = startAt; | |
}); | |
const handleVideoLoad = () => { | |
videoContainer.value.scrollIntoView({ | |
behavior: "smooth", | |
block: "center", | |
}); | |
}; | |
</script> | |
<template> | |
<!-- Video Player --> | |
<p>{{ url }}</p> | |
<div class="player" ref="videoContainer"> | |
<video | |
controls | |
ref="video" | |
@loadeddata="handleVideoLoad" | |
autoplay | |
loop | |
muted | |
> | |
<source :src="`${url}`" type="video/mp4" /> | |
</video> | |
</div> | |
</template> | |
<style lang="scss" scoped> | |
video { | |
width: 100%; | |
} | |
</style> | |