|
@@ -1,5 +1,5 @@
|
|
|
import request from '@/helpers/request';
|
|
|
-import { setLogin, state } from '@/state';
|
|
|
+import { state } from '@/state';
|
|
|
import {
|
|
|
Button,
|
|
|
Cell,
|
|
@@ -14,8 +14,7 @@ import {
|
|
|
reactive,
|
|
|
onUnmounted,
|
|
|
TransitionGroup,
|
|
|
- computed,
|
|
|
- watch
|
|
|
+ computed
|
|
|
} from 'vue';
|
|
|
import styles from './index.module.less';
|
|
|
import { useRoute, useRouter } from 'vue-router';
|
|
@@ -35,14 +34,12 @@ import { handleCheckVip, gotoMemberCenter, hasVip } from '../hook/useFee';
|
|
|
import iconList from './image/icon-list.png';
|
|
|
// import OSticky from '@/components/o-sticky';
|
|
|
import OHeader from '@/components/o-header';
|
|
|
-import { useEventListener, usePageVisibility } from '@vant/use';
|
|
|
+import { useEventListener } from '@vant/use';
|
|
|
import OLoading from '@/components/o-loading';
|
|
|
import OSticky from '@/components/o-sticky';
|
|
|
-import dayjs from 'dayjs';
|
|
|
export default defineComponent({
|
|
|
name: 'courseList',
|
|
|
setup() {
|
|
|
- const pageVisibility = usePageVisibility();
|
|
|
const route = useRoute();
|
|
|
const router = useRouter();
|
|
|
const browserInfo = browser();
|
|
@@ -56,8 +53,6 @@ export default defineComponent({
|
|
|
name: '',
|
|
|
des: ''
|
|
|
},
|
|
|
- hiddenProperty: 'hidden' as any,
|
|
|
- visibilityChangeEvent: '' as any,
|
|
|
list: [] as any,
|
|
|
isDownloading: false // 是否在下载资源
|
|
|
});
|
|
@@ -138,46 +133,13 @@ export default defineComponent({
|
|
|
// window.location.href = location.origin + '/#/member';
|
|
|
};
|
|
|
|
|
|
- const isHasVip = computed(() => {
|
|
|
- console.log('isHasVip');
|
|
|
- return !dayjs().isBefore(
|
|
|
- dayjs(state.user.data.student.membershipEndTime)
|
|
|
- ) && !state.user.data.isExistPendingMember
|
|
|
- ? false
|
|
|
- : true;
|
|
|
- });
|
|
|
-
|
|
|
- const onVisibilityChange = () => {
|
|
|
- console.log(document.visibilityState, '');
|
|
|
- if (document.visibilityState === 'visible') {
|
|
|
- console.log('页面可见');
|
|
|
- }
|
|
|
- };
|
|
|
onMounted(() => {
|
|
|
getDetail();
|
|
|
getList();
|
|
|
listenerMessage('downloadCoursewareToCache', getProgress);
|
|
|
-
|
|
|
- data.hiddenProperty =
|
|
|
- 'hidden' in document
|
|
|
- ? 'hidden'
|
|
|
- : 'webkitHidden' in document
|
|
|
- ? 'webkitHidden'
|
|
|
- : 'mozHidden' in document
|
|
|
- ? 'mozHidden'
|
|
|
- : null;
|
|
|
- data.visibilityChangeEvent = data.hiddenProperty.replace(
|
|
|
- /hidden/i,
|
|
|
- 'visibilitychange'
|
|
|
- );
|
|
|
- document.addEventListener(data.visibilityChangeEvent, onVisibilityChange);
|
|
|
});
|
|
|
onUnmounted(() => {
|
|
|
removeListenerMessage('downloadCoursewareToCache', getProgress);
|
|
|
- document.removeEventListener(
|
|
|
- data.visibilityChangeEvent,
|
|
|
- onVisibilityChange
|
|
|
- );
|
|
|
});
|
|
|
|
|
|
const handleClick = async (item: any) => {
|
|
@@ -319,30 +281,6 @@ export default defineComponent({
|
|
|
document.documentElement.scrollTop;
|
|
|
data.titleOpacity = height > 100 ? 1 : height / 100;
|
|
|
});
|
|
|
-
|
|
|
- watch(
|
|
|
- () => pageVisibility.value,
|
|
|
- async (val: any) => {
|
|
|
- // 为了处理从没有会员,到购买会员返回时状态变化
|
|
|
- if (val === 'visible') {
|
|
|
- try {
|
|
|
- const res = await request.get(
|
|
|
- state.platformType === 'STUDENT'
|
|
|
- ? state.platformApi + '/student/queryUserInfo'
|
|
|
- : state.platformApi + '/teacher/queryUserInfo',
|
|
|
- {
|
|
|
- initRequest: true, // 初始化接口
|
|
|
- requestType: 'form',
|
|
|
- hideLoading: true
|
|
|
- }
|
|
|
- );
|
|
|
- setLogin(res.data);
|
|
|
- } catch (e: any) {
|
|
|
- //
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- );
|
|
|
return () => (
|
|
|
<div class={styles.courseList}>
|
|
|
<OHeader
|
|
@@ -427,7 +365,7 @@ export default defineComponent({
|
|
|
styles.baseBtn,
|
|
|
styles.look,
|
|
|
state.platformType === 'STUDENT' &&
|
|
|
- !isHasVip.value
|
|
|
+ !hasVip()
|
|
|
? styles.disabled
|
|
|
: ''
|
|
|
]}>
|
|
@@ -439,7 +377,7 @@ export default defineComponent({
|
|
|
styles.baseBtn,
|
|
|
styles.down,
|
|
|
state.platformType === 'STUDENT' &&
|
|
|
- !isHasVip.value
|
|
|
+ !hasVip()
|
|
|
? styles.disabled
|
|
|
: '',
|
|
|
item.downloadStatus == 1
|
|
@@ -469,7 +407,7 @@ export default defineComponent({
|
|
|
{data.loading && <OLoading />}
|
|
|
{!data.loading && !data.list.length && <OEmpty tips="暂无内容" />}
|
|
|
|
|
|
- {state.platformType === 'STUDENT' && !isHasVip.value && (
|
|
|
+ {state.platformType === 'STUDENT' && !hasVip() && (
|
|
|
<OSticky position="bottom">
|
|
|
<div class={styles.btnGroup}>
|
|
|
<Button round block type="primary" onClick={gotoMemberCenter}>
|