import { Icon, Swipe, SwipeItem, Tab, Tabs } from 'vant' import { defineComponent, onMounted, reactive, nextTick } from 'vue' import iconBack from './image/back.svg' import styles from './index.module.less' import Plyr from 'plyr' import 'plyr/dist/plyr.css' import request from '@/helpers/request' import { state } from '@/state' import { useRoute } from 'vue-router' import { postMessage } from '@/helpers/native-message' export default defineComponent({ name: 'CoursewarePlay', setup() { postMessage({ api: 'setRequestedOrientation', content:{ orientation: 1 } }) const route = useRoute() const data = reactive({ detail: null, active: '', knowledgePointList: [] as any }) const getDetail = async () => { try { const res: any = await request.get( state.platformApi + `/lessonCoursewareDetail/detail/${route.query.id}` ) if (Array.isArray(res?.data)) { data.detail = res.data } if (Array.isArray(res?.data?.knowledgePointList)) { data.knowledgePointList = res.data.knowledgePointList } console.log('数据加载完成') } catch (error) {} nextTick(() => { console.log('开始加载视频') videoInit() }) } const videoInit = () => { console.log(document.querySelectorAll('.player')) const player = Plyr.setup('.player', { debug: false, ratio: '16:9' }) console.log('🚀 ~ player', player) } onMounted(() => { getDetail() }) const goback = () => { history.go(-1) } return () => (
goback()}> 返回
{{ default: () => { return data.knowledgePointList.map((n: any) => { return }) } // 'nav-right': () =>
}}
{data.knowledgePointList.map((item: any) => { return ( {Array.isArray(item?.materialList) && item.materialList.map((m: any) => { return ( {m.type === 'VIDEO' ? (
) : m.type === 'IMG' ? (
) : (
曲谱
)}
) })}
) })}
) } })