import { defineComponent, onMounted, onUnmounted, reactive, ref, nextTick } from 'vue'; import styles from './index.module.less'; // import signinTips from './images/signin-tips.png'; import { Button, CellGroup, Field, Picker, Popup, closeToast, showToast, Loading } from 'vant'; import { useRoute, useRouter } from 'vue-router'; import threeMan from './images/update/three-man.png' import OWxTip from '@/components/m-wx-tip'; import { browser, getHttpOrigin, getUrlCode } from '@/helpers/utils'; import qs from 'query-string'; import request from '@/helpers/request'; import { goWechatAuth } from '@/state'; import { useInterval, useIntervalFn } from '@vueuse/core'; import MMessageTip from '@/components/m-message-tip'; import TCPlayer from 'tcplayer.js'; import 'tcplayer.js/dist/tcplayer.css'; import { _initVideo } from './initVideo' import nextBtn from './images/next_btn.png' export default defineComponent({ name: 'intention-questionnaire', setup() { // 页面定时 const pageTimer = useInterval(1000, { controls: true }); pageTimer.pause(); const router = useRouter(); const route = useRoute(); const forms = reactive({ loading: true, code: null, openId: '' as any, isPageHide: false, contentA: "
一、请所有家长进行签到
二、观看管乐团家长会议
1、学校领导讲话(5分钟)
2、基金会老师介绍乐团事项(20分钟)
*乐团组建背景及政策
*乐团发展规划与乐器知识讲解
*学校/基金会/家长各方职责与投入
*入团流程讲解
三、请“有意向”让孩子加入乐团的家长点击“乐团报名”完成信息填报
", // 第一段 contentB: "一、请所有家长进行签到
二、观看管乐团家长会议
1、学校领导讲话(5分钟)
2、基金会老师介绍乐团事项(20分钟)
*乐团组建背景及政策
*乐团发展规划与乐器知识讲解
*学校/基金会/家长各方职责与投入
*入团流程讲解
三、请“有意向”让孩子加入乐团的家长点击“乐团报名”完成信息填报
", // 第二段 contentC: "一、请所有家长进行签到
二、观看管乐团家长会议
1、学校领导讲话(5分钟)
2、基金会老师介绍乐团事项(20分钟)
*乐团组建背景及政策
*乐团发展规划与乐器知识讲解
*学校/基金会/家长各方职责与投入
*入团流程讲解
三、请“有意向”让孩子加入乐团的家长点击“乐团报名”完成信息填报
", // 第三段 contentD: "", introductionVideo: "https://oss.dayaedu.com/ktyq/02/1739324017357.mp4", introductionVideoTime: 117, coverImg: "https://oss.dayaedu.com/ktyq/02/1739324197269.png", introductionVideo2: "https://oss.dayaedu.com/ktyq/02/1739324017357.mp4", introductionVideoTime2: 117, coverImg2: "https://oss.dayaedu.com/ktyq/02/1739324215341.png", player1: null as any, player2: null as any, player1Speed: 1, player2Speed: 1, videoLoading1: true, videoLoading2: true, meetingType: 'primarySchoolNo' as 'primarySchoolNo' | 'primarySchoolYes' | 'juniorSchoolNo' | 'juniorSchool' | any, intentionInfo: null as any, }); const showPopup = ref(false); const showPopupMessage = ref(''); // 播放视频总时长 const videoIntervalRef = useInterval(1000, { controls: true }); videoIntervalRef.pause(); const videoIntervalRef2 = useInterval(1000, { controls: true }); videoIntervalRef2.pause(); onMounted(async () => { forms.meetingType = route.query.type || forms.meetingType; nextTick(() => { const videoRef: any = document.querySelector('#register-video') const videoRef2: any = document.querySelector('#register-video2') if(videoRef) { const rect = videoRef?.getBoundingClientRect() console.log(rect) videoRef.style.height = rect.width / 16 * 9 + 'px' } if(videoRef2) { const rect = videoRef2?.getBoundingClientRect() console.log(rect) videoRef2.style.height = rect.width / 16 * 9 + 'px' } }) try { // 判断是否获取微信code码 // if (!forms.code) return; const { data } = await request.get( '/edu-app/open/meetingQuestionSetting/detail?type=' + forms.meetingType + '&weChatCode=' + forms.code ); if (data) { forms.contentA = data.contentA || forms.contentA forms.contentB = data.contentB || forms.contentB forms.contentC = data.contentC || forms.contentC forms.contentD = data.contentD || forms.contentD forms.openId = data.openId sessionStorage.setItem('active-open-id', data.openId); } } catch { // } _initVideo('one', forms, videoIntervalRef) _initVideo('two', forms, videoIntervalRef2) }); const getAppIdAndCode = async (url?: string) => { try { const { data } = await request.get( '/edu-app/open/paramConfig/wechatAppId' ); // 判断是否有微信appId if (data) { closeToast(); goWechatAuth(data, url); } } catch(e) { // console.log(e) } }; if (browser().weixin) { //授权 const openId = sessionStorage.getItem('active-open-id'); forms.openId = openId; const code = getUrlCode(); console.log(code, 'code') if (!code) { const newUrl = getHttpOrigin() + window.location.pathname + '#' + route.path + '?' + qs.stringify({ ...route.query }); getAppIdAndCode(newUrl); return ''; } else { forms.code = code; } } const nextSkip = () => { router.push({ path: '/fill-questionnaire', query: { openId: forms.openId, // meetingType: forms.meetingType } }); }; const onPageShow = () => { console.log(forms.isPageHide, 'showInfo'); if (forms.isPageHide) { window.location.reload(); } }; // 处理监听页面返回不刷新的问题 window.addEventListener('pageshow', onPageShow); const onPageHide = () => { console.log(forms.isPageHide, 'showInfo'); forms.isPageHide = true; }; window.addEventListener('pagehide', onPageHide); onUnmounted(() => { window.removeEventListener('pageshow', onPageShow); window.removeEventListener('pagehide', onPageHide); }); return () => (在您了解上述内容后,请点击下一步进行意见