Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
educationStu
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
向伟
educationStu
Commits
72610769
Commit
72610769
authored
Jan 13, 2022
by
罗超
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
2
parent
95d22c35
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
287 additions
and
200 deletions
+287
-200
choiceQuestion.vue
src/components/word/choiceQuestion.vue
+9
-0
fillInTheBlanks.vue
src/components/word/fillInTheBlanks.vue
+8
-0
index.vue
src/pages/index/index.vue
+2
-1
index.vue
src/pages/study/index.vue
+268
-199
No files found.
src/components/word/choiceQuestion.vue
View file @
72610769
...
@@ -119,6 +119,8 @@
...
@@ -119,6 +119,8 @@
provide
provide
}
from
"vue"
;
}
from
"vue"
;
import
Explain
from
'./explain.vue'
import
Explain
from
'./explain.vue'
const
innerAudioContext
=
uni
.
createInnerAudioContext
();
innerAudioContext
.
autoplay
=
false
;
export
default
{
export
default
{
components
:
{
components
:
{
Explain
Explain
...
@@ -151,15 +153,18 @@
...
@@ -151,15 +153,18 @@
let
data
=
reactive
({
let
data
=
reactive
({
current
:
''
,
//用户选择
current
:
''
,
//用户选择
isShowExplain
:
false
,
isShowExplain
:
false
,
})
})
let
methods
=
{
let
methods
=
{
choice
(
x
)
{
choice
(
x
)
{
data
.
current
=
x
.
Name
;
data
.
current
=
x
.
Name
;
if
(
data
.
current
!==
props
.
item
.
Answer
)
{
if
(
data
.
current
!==
props
.
item
.
Answer
)
{
methods
.
play
(
'https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/educationStu/audio/false.mp3'
)
setTimeout
(()
=>
{
setTimeout
(()
=>
{
data
.
isShowExplain
=
true
data
.
isShowExplain
=
true
},
800
)
},
800
)
}
else
{
}
else
{
methods
.
play
(
'https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/educationStu/audio/true.mp3'
)
setTimeout
(()
=>
{
setTimeout
(()
=>
{
emit
(
'next'
,
1
)
emit
(
'next'
,
1
)
},
500
)
},
500
)
...
@@ -168,6 +173,10 @@
...
@@ -168,6 +173,10 @@
todo
()
{
todo
()
{
emit
(
'next'
)
emit
(
'next'
)
data
.
isShowExplain
=
false
data
.
isShowExplain
=
false
},
play
(
url
)
{
innerAudioContext
.
src
=
url
innerAudioContext
.
play
()
}
}
}
}
onMounted
(()
=>
{
onMounted
(()
=>
{
...
...
src/components/word/fillInTheBlanks.vue
View file @
72610769
...
@@ -99,6 +99,8 @@
...
@@ -99,6 +99,8 @@
import
{
ref
,
reactive
,
toRefs
,
toRef
,
getCurrentInstance
,
watch
,
computed
,
onMounted
,
provide
}
from
"vue"
;
import
{
ref
,
reactive
,
toRefs
,
toRef
,
getCurrentInstance
,
watch
,
computed
,
onMounted
,
provide
}
from
"vue"
;
import
mypone
from
'./myp-one.vue'
import
mypone
from
'./myp-one.vue'
import
Explain
from
'./explain.vue'
import
Explain
from
'./explain.vue'
const
innerAudioContext
=
uni
.
createInnerAudioContext
();
innerAudioContext
.
autoplay
=
false
;
export
default
{
export
default
{
components
:
{
components
:
{
mypone
,
mypone
,
...
@@ -146,11 +148,13 @@
...
@@ -146,11 +148,13 @@
}
}
if
(
data
.
test
==
props
.
item
.
Answer
||
props
.
item
.
Answer
.
indexOf
(
data
.
test
)
>-
1
){
if
(
data
.
test
==
props
.
item
.
Answer
||
props
.
item
.
Answer
.
indexOf
(
data
.
test
)
>-
1
){
data
.
type
=
1
data
.
type
=
1
methods
.
play
(
'https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/educationStu/audio/true.mp3'
)
setTimeout
(()
=>
{
setTimeout
(()
=>
{
emit
(
'next'
,
1
)
emit
(
'next'
,
1
)
},
500
)
},
500
)
}
else
{
}
else
{
data
.
type
=
2
data
.
type
=
2
methods
.
play
(
'https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/Static/educationStu/audio/false.mp3'
)
setTimeout
(()
=>
{
setTimeout
(()
=>
{
data
.
isShowExplain
=
true
data
.
isShowExplain
=
true
},
500
)
},
500
)
...
@@ -162,6 +166,10 @@
...
@@ -162,6 +166,10 @@
todo
(){
todo
(){
emit
(
'next'
)
emit
(
'next'
)
data
.
isShowExplain
=
false
data
.
isShowExplain
=
false
},
play
(
url
)
{
innerAudioContext
.
src
=
url
innerAudioContext
.
play
()
}
}
}
}
onMounted
(()
=>
{
onMounted
(()
=>
{
...
...
src/pages/index/index.vue
View file @
72610769
...
@@ -63,7 +63,8 @@
...
@@ -63,7 +63,8 @@
<view
class=
"wordDuration"
style=
"visibility: hidden;"
>
<view
class=
"wordDuration"
style=
"visibility: hidden;"
>
预计用时10分钟
预计用时10分钟
</view>
</view>
<view
class=
"wordBtn"
<view
class=
"wordBtn"
v-if=
"(pageData.Words.NextWord==0||!pageData.Words.NextWord)&&(pageData.Words.ReviewWord==0||!pageData.Words.ReviewWord)"
>
暂无新词
</view>
<view
class=
"wordBtn"
v-else
@
click=
"jumpPage(`/pages/word/word?CourseId=$
{pageData.Words.CourseId||0}
&&
ChapterId=${pageData.Words.NextCourseNo||0}
&&
ReviewChapterId=${pageData.Words.ReviewCourseNo||0}
&&
ClassId=${pageData.Words.ClassId||0}`)">
@
click=
"jumpPage(`/pages/word/word?CourseId=$
{pageData.Words.CourseId||0}
&&
ChapterId=${pageData.Words.NextCourseNo||0}
&&
ReviewChapterId=${pageData.Words.ReviewCourseNo||0}
&&
ClassId=${pageData.Words.ClassId||0}`)">
开始学习
开始学习
</view>
</view>
...
...
src/pages/study/index.vue
View file @
72610769
<
style
scoped
>
<
style
scoped
>
.studyindex
{
.studyindex
{
width
:
100%
;
width
:
100%
;
height
:
100vh
;
height
:
100vh
;
background
:
#F5F5F5
;
background
:
#F5F5F5
;
overflow-y
:
auto
;
overflow-y
:
auto
;
}
}
.row
{
display
:
flex
;
align-items
:
center
;
.row
{
display
:
flex
;
align-items
:
center
;
}
}
::-webkit-scrollbar
{
display
:
none
}
::-webkit-scrollbar
{
display
:
none
}
.page-title
{
.page-title
{
font-size
:
44
rpx
;
font-size
:
44
rpx
;
font-weight
:
bold
;
font-weight
:
bold
;
color
:
#0f1b35
;
color
:
#0f1b35
;
}
}
.curriculum
{
.curriculum
{
width
:
100%
;
width
:
100%
;
}
}
.box
{
.box
{
padding
:
100
rpx
0
rpx
50
rpx
;
padding
:
100
rpx
0
rpx
50
rpx
;
}
}
.box-top
{
.box-top
{
width
:
100%
;
width
:
100%
;
}
}
.box_t
{
.box_t
{
padding
:
18px
;
padding
:
18px
;
}
}
.box_tb
{
.box_tb
{
height
:
388
rpx
;
height
:
388
rpx
;
background
:
#FFFFFF
;
background
:
#FFFFFF
;
border-radius
:
12px
;
border-radius
:
12px
;
padding
:
15px
;
padding
:
15px
;
}
}
.box_tb_c
{
.box_tb_c
{
width
:
50%
;
width
:
50%
;
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
align-items
:
center
;
align-items
:
center
;
padding
:
46
rpx
;
padding
:
46
rpx
;
}
}
.box_tb_c
span
{
.box_tb_c
span
{
font-size
:
12px
;
font-size
:
12px
;
color
:
#666666
;
color
:
#666666
;
}
}
.box_tb_c
text
{
.box_tb_c
text
{
font-size
:
22
rpx
;
font-size
:
22
rpx
;
color
:
#111111
;
color
:
#111111
;
font-weight
:
bold
;
font-weight
:
bold
;
}
}
.box_tb_b
{
.box_tb_b
{
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
align-items
:
center
;
align-items
:
center
;
margin-top
:
5px
;
margin-top
:
5px
;
}
}
.box_tb_b
.btn
{
.box_tb_b
.btn
{
width
:
130
rpx
;
width
:
130
rpx
;
height
:
50
rpx
;
height
:
50
rpx
;
display
:
flex
;
display
:
flex
;
...
@@ -68,15 +84,17 @@
...
@@ -68,15 +84,17 @@
color
:
#FFFFFF
;
color
:
#FFFFFF
;
margin-top
:
7px
;
margin-top
:
7px
;
}
}
.box_review
{
.box_review
{
background
:
#EBEBEB
;
background
:
#EBEBEB
;
padding
:
36
rpx
;
padding
:
36
rpx
;
margin-top
:
10px
;
margin-top
:
10px
;
position
:
relative
;
position
:
relative
;
height
:
660
rpx
;
height
:
660
rpx
;
}
}
.box_review_date_item
{
.box_review_date_item
{
width
:
calc
((
100vw
-
67
rpx
)/
7
);
width
:
calc
((
100vw
-
67
rpx
)/
7
);
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
...
@@ -85,16 +103,18 @@
...
@@ -85,16 +103,18 @@
font-size
:
17px
;
font-size
:
17px
;
color
:
#999999
;
color
:
#999999
;
height
:
140
rpx
;
height
:
140
rpx
;
border-radius
:
12px
12px
0px
0px
;
border-radius
:
12px
12px
0px
0px
;
}
}
.box_review_date_item2
{
.box_review_date_item2
{
background
:
#4C50E7
;
background
:
#4C50E7
;
color
:
#FFF
;
color
:
#FFF
;
font-weight
:
bold
;
font-weight
:
bold
;
}
}
.box_review_sp
{
.box_review_sp
{
width
:
calc
(
100vw
-
67
rpx
);
width
:
calc
(
100vw
-
67
rpx
);
height
:
420
rpx
;
height
:
420
rpx
;
border-radius
:
12px
;
border-radius
:
12px
;
...
@@ -106,7 +126,8 @@
...
@@ -106,7 +126,8 @@
/* left: 18px; */
/* left: 18px; */
top
:
248
rpx
;
top
:
248
rpx
;
}
}
.box_review_box
{
.box_review_box
{
background
:
#000000
;
background
:
#000000
;
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
...
@@ -116,30 +137,38 @@
...
@@ -116,30 +137,38 @@
height
:
100%
;
height
:
100%
;
border-radius
:
12px
;
border-radius
:
12px
;
}
}
.box_review_swiper
{
.box_review_swiper
{
width
:
calc
(
100vw
-
36px
-
10px
);
width
:
calc
(
100vw
-
36px
-
10px
);
height
:
380
rpx
;
height
:
380
rpx
;
}
}
.myVideo
{
.myVideo
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
border-radius
:
12px
;
border-radius
:
12px
;
}
}
.examination
{
.examination
{
margin-top
:
25px
;
margin-top
:
25px
;
}
}
.examination-box
{
.examination-box
{
background
:
#FFF
;
background
:
#FFF
;
margin
:
10px
0
;
margin
:
10px
0
;
}
}
.examination-box-c
{
.examination-box-c
{
height
:
180
rpx
;
height
:
180
rpx
;
background
:
#F9F9F9
;
background
:
#F9F9F9
;
overflow-x
:
scroll
;
width
:
100%
;
white-space
:
nowrap
;
overflow-x
:
scroll
;
width
:
100%
;
white-space
:
nowrap
;
}
}
.examination-boxb
{
.examination-boxb
{
width
:
200
rpx
;
width
:
200
rpx
;
/* height: 100%; */
/* height: 100%; */
display
:
inline-block
;
display
:
inline-block
;
...
@@ -147,16 +176,18 @@
...
@@ -147,16 +176,18 @@
box-sizing
:
border-box
;
box-sizing
:
border-box
;
/* border-right: 1px solid #E2E2E2; */
/* border-right: 1px solid #E2E2E2; */
}
}
.shuxian
{
.shuxian
{
width
:
2
rpx
;
width
:
2
rpx
;
height
:
100%
;
height
:
100%
;
display
:
inline-block
;
display
:
inline-block
;
padding
:
20px
0
;
padding
:
20px
0
;
box-sizing
:
border-box
;
box-sizing
:
border-box
;
}
}
.shuxianbox
{
.shuxianbox
{
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
align-items
:
center
;
align-items
:
center
;
...
@@ -165,7 +196,8 @@
...
@@ -165,7 +196,8 @@
color
:
#8F8F92
;
color
:
#8F8F92
;
height
:
100%
;
height
:
100%
;
}
}
.examination-box-c-item
{
.examination-box-c-item
{
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
align-items
:
center
;
align-items
:
center
;
...
@@ -174,24 +206,27 @@
...
@@ -174,24 +206,27 @@
color
:
#8F8F92
;
color
:
#8F8F92
;
height
:
100%
;
height
:
100%
;
}
}
.examination-box-c-item
.item_o
{
.examination-box-c-item
.item_o
{
color
:
#A3A3A3
;
color
:
#A3A3A3
;
}
}
.examination-box-c-item
.item_t
{
color
:
#A3A3A3
;
.examination-box-c-item
.item_t
{
font-size
:
19px
;
color
:
#A3A3A3
;
font-weight
:
bold
;
font-size
:
19px
;
margin
:
8
rpx
0
;
font-weight
:
bold
;
margin
:
8
rpx
0
;
}
}
.examination-box-btnbox
{
.examination-box-btnbox
{
width
:
100%
;
width
:
100%
;
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
justify-content
:
center
;
justify-content
:
center
;
}
}
.examination-btn
{
.examination-btn
{
width
:
150
rpx
;
width
:
150
rpx
;
height
:
60
rpx
;
height
:
60
rpx
;
border-radius
:
30
rpx
;
border-radius
:
30
rpx
;
...
@@ -204,34 +239,35 @@
...
@@ -204,34 +239,35 @@
color
:
#FFF
;
color
:
#FFF
;
margin
:
20px
0
;
margin
:
20px
0
;
}
}
.status-blue
{
.status-blue
{
color
:
#00acf9
;
color
:
#00acf9
;
}
}
.status-green
{
.status-green
{
color
:
#00df9f
;
color
:
#00df9f
;
}
}
.status-black
{
.status-black
{
color
:
#111111
;
color
:
#111111
;
}
}
.status-red
{
.status-red
{
color
:
#ff3816
;
color
:
#ff3816
;
}
}
.reviewcenter
{
.reviewcenter
{
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
align-items
:
center
;
align-items
:
center
;
margin-top
:
100
rpx
;
margin-top
:
100
rpx
;
}
}
</
style
>
</
style
>
<
template
>
<
template
>
<view
class=
"studyindex"
>
<view
class=
"studyindex"
>
<van-nav-bar
:border=
"fasle"
fixed
:z-index=
"99"
>
<van-nav-bar
:border=
"fasle"
fixed
:z-index=
"99"
>
<view
slot=
"left"
class=
"page-title"
title=
"shouye"
>
学习
</view>
<view
slot=
"left"
class=
"page-title"
title=
"shouye"
>
学习
</view>
</van-nav-bar>
</van-nav-bar>
<view
class=
"curriculum"
>
<view
class=
"curriculum"
>
<template
v-if=
"CourseList.length==0"
>
<template
v-if=
"CourseList.length==0"
>
...
@@ -248,7 +284,7 @@
...
@@ -248,7 +284,7 @@
<view
class=
"box_tb"
>
<view
class=
"box_tb"
>
<view
class=
"row"
style=
"justify-content: space-between;"
>
<view
class=
"row"
style=
"justify-content: space-between;"
>
<view
class=
"row"
style=
"color: #111111;font-size: 28rpx;font-weight: bold;"
>
<view
class=
"row"
style=
"color: #111111;font-size: 28rpx;font-weight: bold;"
>
<view
>
单词练习
</view>
<view>
单词练习
</view>
<view
style=
"margin-left: 5px;"
>
{{
InfoData
.
TotalScore
}}
</view>
<view
style=
"margin-left: 5px;"
>
{{
InfoData
.
TotalScore
}}
</view>
</view>
</view>
<view
style=
"font-size: 22rpx;color: #4C50E7;"
@
click=
"gourl()"
>
所有单词
</view>
<view
style=
"font-size: 22rpx;color: #4C50E7;"
@
click=
"gourl()"
>
所有单词
</view>
...
@@ -264,55 +300,67 @@
...
@@ -264,55 +300,67 @@
<view
class=
"box_tb_c"
>
<view
class=
"box_tb_c"
>
<span>
需要复习
</span>
<span>
需要复习
</span>
<view
class=
"row"
style=
"align-items: flex-end;"
>
<view
class=
"row"
style=
"align-items: flex-end;"
>
<text
style=
"font-size: 78rpx;font-style: italic"
>
{{
InfoData
.
Words
.
ReviewWord
}}
</text>
<text
style=
"font-size: 78rpx;font-style: italic"
>
{{
InfoData
.
Words
.
ReviewWord
}}
</text>
<text
style=
"margin-left: 5px;margin-bottom: 10px;"
>
词
</text>
<text
style=
"margin-left: 5px;margin-bottom: 10px;"
>
词
</text>
</view>
</view>
</view>
</view>
</view>
</view>
<view
class=
"box_tb_b"
>
<view
class=
"box_tb_b"
>
<view
style=
"font-size: 22rpx;color: #999999;visibility: hidden;"
>
预计用时10分钟
</view>
<view
style=
"font-size: 22rpx;color: #999999;visibility: hidden;"
>
预计用时10分钟
</view>
<view
class=
"btn"
@
click=
"jumpStudyPage()"
>
立即学习
</view>
<view
class=
"btn"
v-if=
"(InfoData.Words.NextWord==0||!InfoData.Words.NextWord)&&(InfoData.Words.ReviewWord==0||!InfoData.Words.ReviewWord)"
>
暂无新词
</view>
<view
class=
"btn"
@
click=
"jumpStudyPage()"
v-else
>
立即学习
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<view
class=
"box_review"
v-if=
'InfoData'
:style=
"
{height:InfoData.Review
&&
InfoData.Review.length>0?'660rpx':'300rpx'}">
<view
class=
"box_review"
v-if=
'InfoData'
:style=
"
{height:InfoData.Review
&&
InfoData.Review.length>0?'660rpx':'300rpx'}">
<view
class=
"row"
style=
"justify-content: space-between;height: 50rpx;"
>
<view
class=
"row"
style=
"justify-content: space-between;height: 50rpx;"
>
<view
class=
"row"
style=
"color: #111111;font-size: 28rpx;font-weight: bold;"
>
<view
class=
"row"
style=
"color: #111111;font-size: 28rpx;font-weight: bold;"
>
<view
>
课程回顾
</view>
<view>
课程回顾
</view>
<view
style=
"font-size: 20rpx;color: #999999;"
>
(最近7天课程)
</view>
<view
style=
"font-size: 20rpx;color: #999999;"
>
(最近7天课程)
</view>
</view>
</view>
<view
style=
"font-size: 22rpx;color: #4C50E7;"
@
click=
"gourl()"
>
所有课程
</view>
<view
style=
"font-size: 22rpx;color: #4C50E7;"
@
click=
"gourl()"
>
所有课程
</view>
</view>
</view>
<view
class=
"reviewcenter"
v-if=
'InfoData.Review && InfoData.Review.length==0'
>
<view
class=
"reviewcenter"
v-if=
'InfoData.Review && InfoData.Review.length==0'
>
<view
style=
"font-size: 26rpx;font-family: PingFang SC;font-weight: bold;color: #111111;"
>
暂无课程
</view>
<view
style=
"font-size: 26rpx;font-family: PingFang SC;font-weight: bold;color: #111111;"
>
暂无课程
<view
style=
"font-size: 20rpx;font-family: PingFang SC;font-weight: 400;color: #888888;margin-top: 10px;"
>
购买课程后可回顾
</view>
</view>
<view
style=
"font-size: 20rpx;font-family: PingFang SC;font-weight: 400;color: #888888;margin-top: 10px;"
>
购买课程后可回顾
</view>
</view>
</view>
<view
class=
"box_review_date row"
style=
"margin-top: 40rpx;"
v-if=
'InfoData.Review && InfoData.Review.length>0'
>
<view
class=
"box_review_date row"
style=
"margin-top: 40rpx;"
v-if=
'InfoData.Review && InfoData.Review.length>0'
>
<view
v-for=
"(x,y) in InfoData.Review"
:key=
'y'
>
<view
v-for=
"(x,y) in InfoData.Review"
:key=
'y'
>
<view
:class=
"
{'box_review_date_item2':current==y}" class="box_review_date_item" @click="goreview(x,y)">
<view
:class=
"
{'box_review_date_item2':current==y}" class="box_review_date_item"
@click="goreview(x,y)">
<text>
{{
getdate
(
x
,
1
)
}}
</text>
<text>
{{
getdate
(
x
,
1
)
}}
</text>
<text
style=
"font-size: 22rpx;margin-top: 5px;"
>
{{
getdate
(
x
,
2
)
}}
</text>
<text
style=
"font-size: 22rpx;margin-top: 5px;"
>
{{
getdate
(
x
,
2
)
}}
</text>
</view>
</view>
</view>
</view>
</view>
</view>
<view
class=
"box_review_sp"
v-if=
'InfoData.Review && InfoData.Review.length>0'
>
<view
class=
"box_review_sp"
v-if=
'InfoData.Review && InfoData.Review.length>0'
>
<view
class=
"box_review_box"
v-if=
"loading"
>
<view
class=
"box_review_box"
v-if=
"loading"
>
<van-loading
size=
"24px"
vertical
color=
"#FFF"
text-color=
"#FFF"
>
加载中...
</van-loading>
<van-loading
size=
"24px"
vertical
color=
"#FFF"
text-color=
"#FFF"
>
加载中...
</van-loading>
</view>
</view>
<view
class=
"box_review_box"
v-if=
"!loading"
>
<view
class=
"box_review_box"
v-if=
"!loading"
>
<view
v-if=
"InfoData.Review[current].videolist.length==0"
>
暂无回顾视频...
</view>
<view
v-if=
"InfoData.Review[current].videolist.length==0"
>
暂无回顾视频...
</view>
<template
v-if=
"InfoData.Review[current].videolist.length>0"
>
<template
v-if=
"InfoData.Review[current].videolist.length>0"
>
<swiper
class=
"box_review_swiper"
@
change=
"swiperChange"
>
<swiper
class=
"box_review_swiper"
@
change=
"swiperChange"
>
<swiper-item
style=
"width: 100%;height: 100%;"
v-for=
"(item, index) in InfoData.Review[current].videolist"
:key=
"index"
>
<swiper-item
style=
"width: 100%;height: 100%;"
<video
class=
"myVideo"
:id=
"'Video'+current+'-'+index"
:src=
"item.URL"
controls
@
error=
"spcuowu"
></video>
v-for=
"(item, index) in InfoData.Review[current].videolist"
:key=
"index"
>
<video
class=
"myVideo"
:id=
"'Video'+current+'-'+index"
:src=
"item.URL"
controls
@
error=
"spcuowu"
></video>
</swiper-item>
</swiper-item>
</swiper>
</swiper>
</
template
>
</
template
>
</view>
</view>
</view>
</view>
</view>
</view>
<view
class=
"examination"
v-if=
'InfoData'
>
<view
class=
"examination"
v-if=
'InfoData'
>
<view
style=
"padding: 0 20px;"
>
<view
style=
"padding: 0 20px;"
>
...
@@ -324,7 +372,9 @@
...
@@ -324,7 +372,9 @@
<view
style=
"font-size: 28rpx;color: #4C50E7;"
@
click=
"gourlkaoshilist()"
>
更多考试
</view>
<view
style=
"font-size: 28rpx;color: #4C50E7;"
@
click=
"gourlkaoshilist()"
>
更多考试
</view>
</view>
</view>
</view>
</view>
<view
class=
"reviewcenter"
style=
"height: 300rpx;margin-top: 0;align-items: center;justify-content: center;"
v-if=
"InfoData.ExamList.length==0"
>
<view
class=
"reviewcenter"
style=
"height: 300rpx;margin-top: 0;align-items: center;justify-content: center;"
v-if=
"InfoData.ExamList.length==0"
>
<view
style=
"font-size: 26rpx;
<view
style=
"font-size: 26rpx;
font-family: PingFang SC;
font-family: PingFang SC;
font-weight: bold;
font-weight: bold;
...
@@ -336,34 +386,36 @@
...
@@ -336,34 +386,36 @@
color: #999999;"
>
参与考试后可查看
</view>
color: #999999;"
>
参与考试后可查看
</view>
</view>
</view>
<view
v-if=
"InfoData.ExamList.length>0"
>
<view
v-if=
"InfoData.ExamList.length>0"
>
<view
v-for=
"(x,y) in InfoData.ExamList"
:key=
'y'
>
<view
v-for=
"(x,y) in InfoData.ExamList"
:key=
'y'
>
<view
class=
"examination-box"
>
<view
class=
"examination-box"
>
<view
style=
"padding: 20px;"
>
<view
style=
"padding: 20px;"
>
<view
style=
"font-size: 36rpx;font-weight: bold;color: #111111;"
>
{{x.PaperName}}
</view>
<view
style=
"font-size: 36rpx;font-weight: bold;color: #111111;"
>
{{x.PaperName}}
</view>
<view
style=
"font-size: 24rpx;font-weight: 500;color: #999999;margin-top: 9px;"
>
<view
style=
"font-size: 24rpx;font-weight: 500;color: #999999;margin-top: 9px;"
>
测评次数:
<text
v-if=
"x.ExamStatus==1||x.ExamStatus==2||x.ExamStatus==4"
>
0
</text>
测评次数:
<text
v-if=
"x.ExamStatus==1||x.ExamStatus==2||x.ExamStatus==4"
>
0
</text>
<text
v-if=
"x.ExamStatus==3||x.ExamStatus==5"
>
1
</text>
次
<text
v-if=
"x.ExamStatus==3||x.ExamStatus==5"
>
1
</text>
次
</view>
</view>
</view>
</view>
<view
>
<view>
<view
class=
"examination-box-c"
>
<view
class=
"examination-box-c"
>
<div
class=
'examination-boxb'
>
<div
class=
'examination-boxb'
>
<view
class=
"examination-box-c-item"
>
<view
class=
"examination-box-c-item"
>
<text
class=
"item_o"
>
我的排名
</text>
<text
class=
"item_o"
>
我的排名
</text>
<text
class=
"item_t"
>
#{{x.MyRank}}
</text>
<text
class=
"item_t"
>
#{{x.MyRank}}
</text>
<text
class=
""
>
分数
</text>
<text
class=
""
>
分数
</text>
</view>
</view>
</div>
</div>
<!-- 这个竖线不知道咋回事弄不出来 如果有好的方案麻烦改下 -->
<!-- 这个竖线不知道咋回事弄不出来 如果有好的方案麻烦改下 -->
<view
class=
"shuxian"
>
<view
class=
"shuxian"
>
<view
class=
"examination-box-c-item"
style=
"border-left: 1px solid #E2E2E2;"
>
<view
class=
"examination-box-c-item"
style=
"border-left: 1px solid #E2E2E2;"
>
<text
class=
"item_o"
></text>
<text
class=
"item_o"
></text>
<text
class=
"item_t"
></text>
<text
class=
"item_t"
></text>
<text
class=
""
style=
"opacity: 0;height: 34rpx;"
>
.
</text>
<text
class=
""
style=
"opacity: 0;height: 34rpx;"
>
.
</text>
</view>
</view>
</view>
</view>
<div
class=
'examination-boxb'
>
<div
class=
'examination-boxb'
>
<view
class=
"examination-box-c-item"
>
<view
class=
"examination-box-c-item"
>
<text
class=
"item_o"
>
我的得分
</text>
<text
class=
"item_o"
>
我的得分
</text>
<text
class=
"item_t"
>
{{x.TotalScore}}
</text>
<text
class=
"item_t"
>
{{x.TotalScore}}
</text>
...
@@ -371,34 +423,36 @@
...
@@ -371,34 +423,36 @@
</view>
</view>
</div>
</div>
<view
class=
"shuxian"
>
<view
class=
"shuxian"
>
<view
class=
"examination-box-c-item"
style=
"border-left: 1px solid #E2E2E2;"
>
<view
class=
"examination-box-c-item"
style=
"border-left: 1px solid #E2E2E2;"
>
<text
class=
"item_o"
></text>
<text
class=
"item_o"
></text>
<text
class=
"item_t"
></text>
<text
class=
"item_t"
></text>
<text
class=
""
style=
"opacity: 0;height: 34rpx;"
>
.
</text>
<text
class=
""
style=
"opacity: 0;height: 34rpx;"
>
.
</text>
</view>
</view>
</view>
</view>
<!-- ExamStatus 1未开始 2已开始 3已考试 4缺考 5已阅卷 -->
<!-- ExamStatus 1未开始 2已开始 3已考试 4缺考 5已阅卷 -->
<div
class=
'examination-boxb'
>
<div
class=
'examination-boxb'
>
<view
class=
"examination-box-c-item"
>
<view
class=
"examination-box-c-item"
>
<text
class=
"item_o"
>
考试状态
</text>
<text
class=
"item_o"
>
考试状态
</text>
<text
class=
""
style=
"opacity: 0;height: 34rpx;"
>
.
</text>
<text
class=
""
style=
"opacity: 0;height: 34rpx;"
>
.
</text>
<text
style=
"font-size: 28rpx;font-weight: bold"
:class=
"{
<text
style=
"font-size: 28rpx;font-weight: bold"
:class=
"{
'status-blue': x.ExamStatus==1,
'status-blue': x.ExamStatus==1,
'status-green': x.ExamStatus==2,
'status-green': x.ExamStatus==2,
'status-black': x.ExamStatus==3,
'status-black': x.ExamStatus==3,
'status-red': x.ExamStatus==4,
'status-red': x.ExamStatus==4,
}"
>
{{x.ExamStatusStr}}
</text>
}"
>
{{x.ExamStatusStr}}
</text>
</view>
</view>
</div>
</div>
<view
class=
"shuxian"
>
<view
class=
"shuxian"
>
<view
class=
"examination-box-c-item"
style=
"border-left: 1px solid #E2E2E2;"
>
<view
class=
"examination-box-c-item"
style=
"border-left: 1px solid #E2E2E2;"
>
<text
class=
"item_o"
></text>
<text
class=
"item_o"
></text>
<text
class=
"item_t"
></text>
<text
class=
"item_t"
></text>
<text
class=
""
style=
"opacity: 0;height: 34rpx;"
>
.
</text>
<text
class=
""
style=
"opacity: 0;height: 34rpx;"
>
.
</text>
</view>
</view>
</view>
</view>
<div
class=
'examination-boxb'
>
<div
class=
'examination-boxb'
>
<view
class=
"examination-box-c-item"
>
<view
class=
"examination-box-c-item"
>
<text
class=
"item_o"
>
我的耗时
</text>
<text
class=
"item_o"
>
我的耗时
</text>
<text
class=
"item_t"
>
{{getTimems(x.ExamSecondTime) }}
</text>
<text
class=
"item_t"
>
{{getTimems(x.ExamSecondTime) }}
</text>
...
@@ -406,13 +460,14 @@
...
@@ -406,13 +460,14 @@
</view>
</view>
</div>
</div>
<view
class=
"shuxian"
>
<view
class=
"shuxian"
>
<view
class=
"examination-box-c-item"
style=
"border-left: 1px solid #E2E2E2;"
>
<view
class=
"examination-box-c-item"
style=
"border-left: 1px solid #E2E2E2;"
>
<text
class=
"item_o"
></text>
<text
class=
"item_o"
></text>
<text
class=
"item_t"
></text>
<text
class=
"item_t"
></text>
<text
class=
""
style=
"opacity: 0;height: 34rpx;"
>
.
</text>
<text
class=
""
style=
"opacity: 0;height: 34rpx;"
>
.
</text>
</view>
</view>
</view>
</view>
<div
class=
'examination-boxb'
>
<div
class=
'examination-boxb'
>
<view
class=
"examination-box-c-item"
>
<view
class=
"examination-box-c-item"
>
<text
class=
"item_o"
>
最高得分
</text>
<text
class=
"item_o"
>
最高得分
</text>
<text
class=
"item_t"
>
{{x.MaxScore}}
</text>
<text
class=
"item_t"
>
{{x.MaxScore}}
</text>
...
@@ -440,37 +495,47 @@
...
@@ -440,37 +495,47 @@
import
indexNo
from
'./components/indexNo.vue'
import
indexNo
from
'./components/indexNo.vue'
import
carousel
from
'./components/vear-carousel/vear-carousel.vue'
import
carousel
from
'./components/vear-carousel/vear-carousel.vue'
import
bottom
from
'../../components/bottom.vue'
import
bottom
from
'../../components/bottom.vue'
import
{
ref
,
reactive
,
toRefs
,
toRef
,
getCurrentInstance
,
watch
,
computed
,
onMounted
,
provide
,}
from
"vue"
;
import
{
ref
,
reactive
,
toRefs
,
toRef
,
getCurrentInstance
,
watch
,
computed
,
onMounted
,
provide
,
}
from
"vue"
;
export
default
{
export
default
{
components
:
{
components
:
{
indexNo
,
indexNo
,
bottom
,
bottom
,
carousel
carousel
},
},
setup
(
props
)
{
setup
(
props
)
{
let
{
let
{
proxy
proxy
}
=
getCurrentInstance
();
}
=
getCurrentInstance
();
let
data
=
reactive
({
let
data
=
reactive
({
CourseList
:
[],
//课程列表
CourseList
:
[],
//课程列表
statusBarHeight
:
0
,
statusBarHeight
:
0
,
CourseInfoMsg
:{
CourseInfoMsg
:
{
ClassId
:
0
,
ClassId
:
0
,
GuestId
:
0
,
GuestId
:
0
,
CourseId
:
0
CourseId
:
0
},
},
InfoData
:
null
,
InfoData
:
null
,
current
:
0
,
current
:
0
,
loading
:
false
,
//获取视频加载中
loading
:
false
,
//获取视频加载中
checkIndex
:
0
checkIndex
:
0
})
})
let
methods
=
{
let
methods
=
{
getCourseList
()
{
getCourseList
()
{
proxy
.
$request
(
"/AppletIndex/GetMyStudyCourseList"
,
{}).
then
(
res
=>
{
proxy
.
$request
(
"/AppletIndex/GetMyStudyCourseList"
,
{}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
if
(
res
.
Code
==
1
)
{
data
.
CourseList
=
res
.
Data
data
.
CourseList
=
res
.
Data
if
(
data
.
CourseList
.
length
>
0
)
{
if
(
data
.
CourseList
.
length
>
0
)
{
data
.
CourseInfoMsg
.
ClassId
=
data
.
CourseList
[
0
].
ClassId
;
data
.
CourseInfoMsg
.
ClassId
=
data
.
CourseList
[
0
].
ClassId
;
data
.
CourseInfoMsg
.
GuestId
=
data
.
CourseList
[
0
].
GuestId
;
data
.
CourseInfoMsg
.
GuestId
=
data
.
CourseList
[
0
].
GuestId
;
data
.
CourseInfoMsg
.
CourseId
=
data
.
CourseList
[
0
].
CourseId
;
data
.
CourseInfoMsg
.
CourseId
=
data
.
CourseList
[
0
].
CourseId
;
...
@@ -478,174 +543,178 @@
...
@@ -478,174 +543,178 @@
}
}
}
}
})
})
},
},
getCourseInfo
()
{
//详情
getCourseInfo
()
{
//详情
proxy
.
$request
(
"/AppletIndex/GetMyStudyCourseInfo"
,
data
.
CourseInfoMsg
).
then
(
res
=>
{
proxy
.
$request
(
"/AppletIndex/GetMyStudyCourseInfo"
,
data
.
CourseInfoMsg
).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
if
(
res
.
Code
==
1
)
{
data
.
InfoData
=
res
.
Data
data
.
InfoData
=
res
.
Data
if
(
res
.
Data
&&
res
.
Data
.
Review
.
length
>
0
)
{
if
(
res
.
Data
&&
res
.
Data
.
Review
.
length
>
0
)
{
data
.
InfoData
.
Review
.
forEach
(
x
=>
{
data
.
InfoData
.
Review
.
forEach
(
x
=>
{
x
.
videolist
=
[]
x
.
videolist
=
[]
})
})
that
.
getvideo
()
that
.
getvideo
()
}
}
}
}
})
})
},
},
spcuowu
(
e
){
spcuowu
(
e
)
{
console
.
log
(
e
,
'视频错误'
)
console
.
log
(
e
,
'视频错误'
)
},
},
selectedBanner
(
index
)
{
//切换轮播图的时候 调取接口
selectedBanner
(
index
)
{
//切换轮播图的时候 调取接口
data
.
checkIndex
=
index
;
data
.
checkIndex
=
index
;
data
.
CourseInfoMsg
.
ClassId
=
data
.
CourseList
[
index
].
ClassId
;
data
.
CourseInfoMsg
.
ClassId
=
data
.
CourseList
[
index
].
ClassId
;
that
.
getCourseInfo
()
that
.
getCourseInfo
()
},
},
goreview
(
x
,
y
){
//回顾选择
goreview
(
x
,
y
)
{
//回顾选择
that
.
swiperChange
()
//让当前页面的视频暂停
that
.
swiperChange
()
//让当前页面的视频暂停
data
.
current
=
y
;
data
.
current
=
y
;
that
.
getvideo
()
that
.
getvideo
()
},
},
getvideo
(){
getvideo
()
{
if
(
data
.
InfoData
.
Review
[
data
.
current
].
videolist
.
length
==
0
)
{
if
(
data
.
InfoData
.
Review
[
data
.
current
].
videolist
.
length
==
0
)
{
let
datalist
=
data
.
InfoData
.
Review
[
data
.
current
].
List
let
datalist
=
data
.
InfoData
.
Review
[
data
.
current
].
List
if
(
datalist
.
length
>
0
)
{
if
(
datalist
.
length
>
0
)
{
data
.
loading
=
true
data
.
loading
=
true
datalist
.
forEach
((
x
,
y
)
=>
{
datalist
.
forEach
((
x
,
y
)
=>
{
that
.
getvideoId
(
x
,
y
)
that
.
getvideoId
(
x
,
y
)
})
})
}
}
}
}
},
},
getvideoId
(
x
,
y
)
{
//获取视频id
getvideoId
(
x
,
y
)
{
//获取视频id
if
(
x
.
VideoUrl
){
//判断是否有视频id
if
(
x
.
VideoUrl
)
{
//判断是否有视频id
proxy
.
$request
(
"/Video/GetVideoPlayAuth"
,
{
strVid
:
x
.
VideoUrl
}).
then
(
res
=>
{
proxy
.
$request
(
"/Video/GetVideoPlayAuth"
,
{
strVid
:
x
.
VideoUrl
}).
then
(
res
=>
{
if
(
res
.
Code
==
1
)
{
if
(
res
.
Code
==
1
)
{
that
.
getvideourl
(
res
.
Data
,
y
)
that
.
getvideourl
(
res
.
Data
,
y
)
}
}
})
})
}
else
{
}
else
{
data
.
loading
=
false
data
.
loading
=
false
}
}
},
},
async
getvideourl
(
x
,
y
)
{
//获取视频地址
async
getvideourl
(
x
,
y
)
{
//获取视频地址
proxy
.
$request
(
"/Video/GetPlayInfo"
,
{
strVid
:
x
.
VideoMeta
.
VideoId
}).
then
(
res
=>
{
proxy
.
$request
(
"/Video/GetPlayInfo"
,
{
if
(
res
.
Code
==
1
)
{
//地址赋值
strVid
:
x
.
VideoMeta
.
VideoId
data
.
InfoData
.
Review
[
data
.
current
].
videolist
.
push
(
res
.
Data
)
}).
then
(
res
=>
{
if
(
y
+
1
==
data
.
InfoData
.
Review
[
data
.
current
].
List
.
length
){
if
(
res
.
Code
==
1
)
{
//地址赋值
data
.
loading
=
false
data
.
InfoData
.
Review
[
data
.
current
].
videolist
.
push
(
res
.
Data
)
if
(
y
+
1
==
data
.
InfoData
.
Review
[
data
.
current
].
List
.
length
)
{
data
.
loading
=
false
}
}
}
}
})
})
},
},
swiperChange
()
{
//当前选择视频全部暂停
swiperChange
()
{
//当前选择视频全部暂停
let
trailer
=
data
.
InfoData
.
Review
[
data
.
current
].
videolist
// 获取视频列表
let
trailer
=
data
.
InfoData
.
Review
[
data
.
current
].
videolist
// 获取视频列表
if
(
trailer
.
length
>
0
)
{
if
(
trailer
.
length
>
0
)
{
trailer
.
forEach
((
item
,
index
)
=>
{
trailer
.
forEach
((
item
,
index
)
=>
{
if
(
item
.
URL
!=
null
&&
item
.
URL
!=
''
)
{
if
(
item
.
URL
!=
null
&&
item
.
URL
!=
''
)
{
let
temp
=
'Video'
+
data
.
current
+
'-'
+
index
;
let
temp
=
'Video'
+
data
.
current
+
'-'
+
index
;
// 暂停其他视频
// 暂停其他视频
uni
.
createVideoContext
(
temp
,
this
).
pause
()
uni
.
createVideoContext
(
temp
,
this
).
pause
()
}
}
})
})
}
}
},
},
gourl
()
{
//学习列表
gourl
()
{
//学习列表
let
ClassId
=
data
.
CourseList
[
data
.
checkIndex
].
ClassId
;
let
ClassId
=
data
.
CourseList
[
data
.
checkIndex
].
ClassId
;
let
CourseId
=
data
.
CourseList
[
data
.
checkIndex
].
CourseId
;
let
CourseId
=
data
.
CourseList
[
data
.
checkIndex
].
CourseId
;
let
CourseName
=
data
.
CourseList
[
data
.
checkIndex
].
CourseName
;
let
CourseName
=
data
.
CourseList
[
data
.
checkIndex
].
CourseName
;
let
TotalHours
=
data
.
CourseList
[
data
.
checkIndex
].
TotalHours
;
let
TotalHours
=
data
.
CourseList
[
data
.
checkIndex
].
TotalHours
;
uni
.
navigateTo
({
uni
.
navigateTo
({
url
:
'/pages/study/courseList?ClassId='
+
ClassId
+
'&CourseId='
+
CourseId
+
'&CourseName='
+
CourseName
+
'&TotalHours='
+
TotalHours
url
:
'/pages/study/courseList?ClassId='
+
ClassId
+
'&CourseId='
+
CourseId
+
'&CourseName='
+
CourseName
+
'&TotalHours='
+
TotalHours
})
})
},
},
gourlkaoshilist
(){
gourlkaoshilist
()
{
let
indexData
=
uni
.
getStorageSync
(
"indexData"
)
let
indexData
=
uni
.
getStorageSync
(
"indexData"
)
uni
.
navigateTo
({
uni
.
navigateTo
({
url
:
`/pages/exam/examPaperList?Id=
${
indexData
.
GuestId
}
`
url
:
`/pages/exam/examPaperList?Id=
${
indexData
.
GuestId
}
`
})
})
},
},
jumpPage
(
url
)
{
jumpPage
(
url
)
{
uni
.
navigateTo
({
uni
.
navigateTo
({
url
:
url
,
url
:
url
,
});
});
},
},
jumpStudyPage
(){
jumpStudyPage
()
{
let
url
=
`/pages/word/word?CourseId=
${
data
.
InfoData
.
Words
.
CourseId
}
&&ChapterId=
${
data
.
InfoData
.
Words
.
NextCourseNo
}
&&ReviewChapterId=
${
data
.
InfoData
.
Words
.
ReviewCourseNo
}
&&ClassId=
${
data
.
InfoData
.
Words
.
ClassId
}
`
let
url
=
`/pages/word/word?CourseId=
${
data
.
InfoData
.
Words
.
CourseId
}
&&ChapterId=
${
data
.
InfoData
.
Words
.
NextCourseNo
}
&&ReviewChapterId=
${
data
.
InfoData
.
Words
.
ReviewCourseNo
}
&&ClassId=
${
data
.
InfoData
.
Words
.
ClassId
}
`
uni
.
navigateTo
({
uni
.
navigateTo
({
url
:
url
url
:
url
});
});
},
},
gourlkaoshixq
(
item
){
gourlkaoshixq
(
item
)
{
let
indexData
=
uni
.
getStorageSync
(
"indexData"
)
let
indexData
=
uni
.
getStorageSync
(
"indexData"
)
//ExamStatus 1未开始 2已开始 3已考试 4缺考 5已阅卷
//ExamStatus 1未开始 2已开始 3已考试 4缺考 5已阅卷
if
(
item
.
ExamStatus
==
5
)
{
if
(
item
.
ExamStatus
==
5
)
{
this
.
jumpPage
(
this
.
jumpPage
(
`/pages/exam/examScore?GuestId=
${
indexData
.
GuestId
}
&&PaperId=
${
item
.
PaperId
}
&&Id=
${
item
.
Id
}
&&Exam_Student_Id=
${
item
.
Exam_Student_Id
}
&&ExamStatus=
${
item
.
ExamStatus
}
`
`/pages/exam/examScore?GuestId=
${
indexData
.
GuestId
}
&&PaperId=
${
item
.
PaperId
}
&&Id=
${
item
.
Id
}
&&Exam_Student_Id=
${
item
.
Exam_Student_Id
}
&&ExamStatus=
${
item
.
ExamStatus
}
`
);
);
}
else
{
}
else
{
this
.
jumpPage
(
this
.
jumpPage
(
`/pages/exam/examPaper?GuestId=
${
indexData
.
GuestId
}
&&PaperId=
${
item
.
PaperId
}
&&Id=
${
item
.
Id
}
&&Exam_Student_Id=
${
item
.
Exam_Student_Id
}
&&ExamStatus=
${
item
.
ExamStatus
}
`
`/pages/exam/examPaper?GuestId=
${
indexData
.
GuestId
}
&&PaperId=
${
item
.
PaperId
}
&&Id=
${
item
.
Id
}
&&Exam_Student_Id=
${
item
.
Exam_Student_Id
}
&&ExamStatus=
${
item
.
ExamStatus
}
`
);
);
}
}
},
},
getdate
(
x
,
type
){
//获取月和天
getdate
(
x
,
type
)
{
//获取月和天
let
day
=
''
,
month
=
''
;
let
day
=
''
,
if
(
type
==
1
){
month
=
''
;
if
(
type
==
1
)
{
day
=
x
.
ClassDate
.
split
(
'-'
)[
2
]
day
=
x
.
ClassDate
.
split
(
'-'
)[
2
]
return
day
return
day
}
else
{
}
else
{
month
=
x
.
ClassDate
.
split
(
'-'
)[
1
]
month
=
x
.
ClassDate
.
split
(
'-'
)[
1
]
month
=
Number
(
month
)
+
'月'
month
=
Number
(
month
)
+
'月'
return
month
return
month
}
}
},
},
getTimems
(
data
)
{
//获取分秒
getTimems
(
data
)
{
//获取分秒
let
time
=
Number
(
data
)
let
time
=
Number
(
data
)
if
(
time
>
0
)
{
if
(
time
>
0
)
{
let
second
=
Math
.
floor
(
time
%
60
);
// 秒
let
second
=
Math
.
floor
(
time
%
60
);
// 秒
let
minute
=
Math
.
floor
(
time
%
3600
/
60
);
// 分
let
minute
=
Math
.
floor
(
time
%
3600
/
60
);
// 分
let
hour
=
Math
.
floor
(
time
/
3600
);
// 时
let
hour
=
Math
.
floor
(
time
/
3600
);
// 时
let
str
=
''
;
let
str
=
''
;
if
(
minute
>
0
||
hour
>
0
)
{
if
(
minute
>
0
||
hour
>
0
)
{
if
(
hour
>
0
)
{
if
(
hour
>
0
)
{
str
=
hour
*
60
+
minute
+
'′'
;
str
=
hour
*
60
+
minute
+
'′'
;
}
else
{
}
else
{
str
=
minute
+
'′'
;
str
=
minute
+
'′'
;
}
}
}
}
if
(
second
>
0
)
{
if
(
second
>
0
)
{
str
=
str
+
second
+
'″'
;
str
=
str
+
second
+
'″'
;
}
}
return
str
return
str
}
else
{
}
else
{
return
'0″'
return
'0″'
}
}
}
}
}
}
onMounted
(()
=>
{
onMounted
(()
=>
{
data
.
statusBarHeight
=
uni
.
getSystemInfoSync
().
statusBarHeight
;
data
.
statusBarHeight
=
uni
.
getSystemInfoSync
().
statusBarHeight
;
})
})
let
that
=
methods
;
let
that
=
methods
;
return
{
return
{
...
toRefs
(
data
),
...
toRefs
(
data
),
...
methods
,
...
methods
,
};
};
},
},
onShow
()
{
onShow
()
{
if
(
this
.
$isLogin
())
{
if
(
this
.
$isLogin
())
{
this
.
getCourseList
()
//我的课程列表
this
.
getCourseList
()
//我的课程列表
}
}
},
},
}
}
</
script
>
</
script
>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment