forked from zhongyidian/super_video
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
46 lines
1.1 KiB
Vue
46 lines
1.1 KiB
Vue
<script setup lang="ts">
|
|
import { ref } from 'vue'
|
|
import { useRouter } from 'vue-router'
|
|
import { ImgButton } from '@/components/Button'
|
|
import { Video } from '@/components'
|
|
import { IMAGE_PATHS, getPublicPath, getVideoPoster } from '@/utils'
|
|
import { useInterviewStore } from '@/stores'
|
|
|
|
const router = useRouter()
|
|
const interviewStore = useInterviewStore()
|
|
const playing = ref(false)
|
|
|
|
const handleBack = () => {
|
|
router.back()
|
|
}
|
|
|
|
const handleEnded = () => {
|
|
interviewStore.markViewed('InterviewSoundEffect')
|
|
}
|
|
</script>
|
|
|
|
<template>
|
|
<div class="relative w-full h-full overflow-hidden bg-black">
|
|
<Video
|
|
class="w-full h-full"
|
|
:src="getPublicPath('video/interview/editing/ftmk_yx_batch.mp4')"
|
|
:poster="
|
|
getVideoPoster(
|
|
getPublicPath('video/interview/editing/ftmk_yx_batch.mp4'),
|
|
)
|
|
"
|
|
v-model="playing"
|
|
:muted="false"
|
|
:volume="1"
|
|
:controls="true"
|
|
:hideNativeControls="true"
|
|
@ended="handleEnded"
|
|
/>
|
|
<ImgButton
|
|
class="absolute right-0 top-0 z-20"
|
|
:image="IMAGE_PATHS.COMPONENTS.BACK"
|
|
@click="handleBack"
|
|
/>
|
|
</div>
|
|
</template>
|