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
f5be80d4
Commit
f5be80d4
authored
Sep 09, 2021
by
罗超
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
430c1ef5
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
50 additions
and
87 deletions
+50
-87
MultipleChoice.vue
src/components/subject/MultipleChoice.vue
+9
-22
SingleChoice.vue
src/components/subject/SingleChoice.vue
+20
-17
readingCompre.vue
src/components/subject/readingCompre.vue
+21
-48
No files found.
src/components/subject/MultipleChoice.vue
View file @
f5be80d4
...
@@ -20,31 +20,28 @@
...
@@ -20,31 +20,28 @@
:current=
"current"
:current=
"current"
@
change=
"onchange"
@
change=
"onchange"
>
>
<swiper-item
v-if=
"sortIndex != 1"
></swiper-item>
<swiper-item></swiper-item>
<swiper-item
<swiper-item
v-for=
"(item1, index1) in data.DetailsList"
:key=
"index1"
>
v-for=
"(item1, index1) in data.DetailsList"
:key=
"item1.id"
>
<view
class=
"item1"
>
<view
class=
"item1"
>
<view
class=
"flex flex_start_center"
>
<view
class=
"flex flex_start_center"
>
<view
class=
"num"
v-html=
"item1.Title"
></view>
<view
class=
"num"
v-html=
"item1.Title"
></view>
</view>
</view>
<view
<view
v-for=
"(item2, index2) in item1.QuestionContentObj"
v-for=
"(item2, index2) in item1.QuestionContentObj"
:key=
"i
tem2.id
"
:key=
"i
ndex2
"
class=
"item2 flex flex_start_center"
class=
"item2 flex flex_start_center"
>
>
<view
<view
class=
"chooseNum"
class=
"chooseNum"
:class=
"
{
:class=
"
{
myAnswer: item
1.myAnswer.find((e) => e == item2.Name)
,
myAnswer: item
2.IsAnswer
,
}"
}"
@click="change(i
ndex1, index
2)"
@click="change(i
tem
2)"
>
{{
item2
.
Name
}}
>
{{
item2
.
Show
Name
}}
</view>
</view>
<view
<view
class=
"chooseName"
class=
"chooseName"
@
click=
"change(i
ndex1, index
2)"
@
click=
"change(i
tem
2)"
v-html=
"item2.Content"
v-html=
"item2.Content"
></view>
></view>
</view>
</view>
...
@@ -77,9 +74,6 @@ export default {
...
@@ -77,9 +74,6 @@ export default {
sortTotal
:
Number
,
sortTotal
:
Number
,
},
},
setup
(
props
,
context
)
{
setup
(
props
,
context
)
{
props
.
paperData
.
DetailsList
.
forEach
((
item
,
index
)
=>
{
item
.
myAnswer
=
[];
});
let
data
=
reactive
({
let
data
=
reactive
({
data
:
props
.
paperData
,
data
:
props
.
paperData
,
sortIndex
:
props
.
sort
+
1
,
sortIndex
:
props
.
sort
+
1
,
...
@@ -100,15 +94,8 @@ export default {
...
@@ -100,15 +94,8 @@ export default {
uni
.
navigateBack
();
uni
.
navigateBack
();
},
},
//选题
//选题
change
(
index1
,
index2
)
{
change
(
item
)
{
let
myAnswer
=
data
.
data
.
DetailsList
[
index1
].
myAnswer
;
item
.
IsAnswer
=
!
item
.
IsAnswer
;
let
res
=
data
.
data
.
DetailsList
[
index1
].
QuestionContentObj
[
index2
].
Name
;
let
find
=
myAnswer
.
indexOf
(
res
);
if
(
find
==
-
1
)
{
myAnswer
.
push
(
res
);
}
else
{
myAnswer
.
splice
(
find
,
1
);
}
},
},
onchange
(
e
)
{
onchange
(
e
)
{
data
.
ExamIndex
=
e
.
detail
.
current
;
data
.
ExamIndex
=
e
.
detail
.
current
;
...
...
src/components/subject/SingleChoice.vue
View file @
f5be80d4
...
@@ -21,12 +21,10 @@
...
@@ -21,12 +21,10 @@
@
change=
"onchange"
@
change=
"onchange"
:skip-hidden-item-layout=
"true"
:skip-hidden-item-layout=
"true"
>
>
<!--
<swiper-item
v-if=
"sortIndex != 1"
>
第一页
</swiper-item>
-->
<swiper-item>
<swiper-item>
第一页
</swiper-item>
<!-- 第一页 -->
<swiper-item
</swiper-item>
v-for=
"(item1, index1) in data.DetailsList"
<swiper-item
v-for=
"(item1, index1) in data.DetailsList"
:key=
"index1"
>
:key=
"item1.id"
>
<view
class=
"item1"
>
<view
class=
"item1"
>
<view
class=
"flex flex_start_center"
>
<view
class=
"flex flex_start_center"
>
<view
class=
"num"
v-html=
"item1.Title"
></view>
<view
class=
"num"
v-html=
"item1.Title"
></view>
...
@@ -34,24 +32,26 @@
...
@@ -34,24 +32,26 @@
<view
<view
v-for=
"(item2, index2) in item1.QuestionContentObj"
v-for=
"(item2, index2) in item1.QuestionContentObj"
:key=
"i
tem2.id
"
:key=
"i
ndex2
"
class=
"flex item2 flex_start_center"
class=
"flex item2 flex_start_center"
>
>
<view
<view
class=
"chooseNum"
class=
"chooseNum"
:class=
"
{ myAnswer: item
1.myAnswer === item2.Name
}"
:class=
"
{ myAnswer: item
2.IsAnswer
}"
@click="change(i
ndex1, index
2)"
@click="change(i
tem1, item
2)"
>
{{
item2
.
Name
}}
>
{{
item2
.
Show
Name
}}
</view>
</view>
<view
<view
class=
"chooseName"
class=
"chooseName"
@
click=
"change(i
ndex1, index
2)"
@
click=
"change(i
tem1, item
2)"
v-html=
"item2.Content"
v-html=
"item2.Content"
></view>
></view>
</view>
</view>
</view>
</view>
</swiper-item>
</swiper-item>
<swiper-item
v-if=
"sortIndex != sortTotal"
>
最后一页
</swiper-item>
<swiper-item
v-if=
"sortIndex != sortTotal"
>
<!-- 最后一页 -->
</swiper-item>
</swiper>
</swiper>
</view>
</view>
<van-toast
id=
"van-toast"
/>
<van-toast
id=
"van-toast"
/>
...
@@ -99,16 +99,19 @@ export default {
...
@@ -99,16 +99,19 @@ export default {
uni
.
navigateBack
();
uni
.
navigateBack
();
},
},
//选题
//选题
change
(
index1
,
index2
)
{
change
(
item1
,
item2
)
{
data
.
data
.
DetailsList
[
index1
].
myAnswer
=
item1
.
QuestionContentObj
.
map
((
e
)
=>
{
data
.
data
.
DetailsList
[
index1
].
QuestionContentObj
[
index2
].
Name
;
if
(
e
.
Name
==
item2
.
Name
)
{
e
.
IsAnswer
=
true
;
}
else
{
e
.
IsAnswer
=
false
;
}
});
},
},
onchange
(
e
)
{
onchange
(
e
)
{
console
.
log
(
106
,
e
.
detail
.
current
);
if
(
data
.
sortIndex
==
1
)
{
if
(
data
.
sortIndex
==
1
)
{
data
.
ExamIndex
=
e
.
detail
.
current
;
data
.
ExamIndex
=
e
.
detail
.
current
;
}
}
if
(
data
.
ExamIndex
===
data
.
data
.
DetailsList
.
length
+
1
)
{
if
(
data
.
ExamIndex
===
data
.
data
.
DetailsList
.
length
+
1
)
{
console
.
log
(
"单选"
,
e
.
detail
);
console
.
log
(
"单选"
,
e
.
detail
);
this
.
$emit
(
"getAfterTopic"
);
this
.
$emit
(
"getAfterTopic"
);
...
...
src/components/subject/readingCompre.vue
View file @
f5be80d4
...
@@ -20,11 +20,8 @@
...
@@ -20,11 +20,8 @@
:current=
"current"
:current=
"current"
@
change=
"onchange"
@
change=
"onchange"
>
>
<swiper-item
v-if=
"sortIndex != 1"
></swiper-item>
<swiper-item></swiper-item>
<swiper-item
<swiper-item
v-for=
"(item1, index1) in data.DetailsList"
:key=
"index1"
>
v-for=
"(item1, index1) in data.DetailsList"
:key=
"item1.id"
>
<view
class=
"item1"
>
<view
class=
"item1"
>
<view
class=
"flex flex_start_center"
>
<view
class=
"flex flex_start_center"
>
<view
<view
...
@@ -69,13 +66,13 @@
...
@@ -69,13 +66,13 @@
>
>
<view
<view
class=
"chooseNum"
class=
"chooseNum"
:class=
"
{ myAnswer: item
2.myAnswer === item3.Name
}"
:class=
"
{ myAnswer: item
3.IsAnswer
}"
@click="singerChange(i
ndex1, index2, index
3)"
@click="singerChange(i
tem2, item
3)"
>
{{
item3
.
Name
}}
>
{{
item3
.
Name
}}
</view>
</view>
<view
<view
class=
"chooseName"
class=
"chooseName"
@
click=
"singerChange(i
ndex1, index2, index
3)"
@
click=
"singerChange(i
tem2, item
3)"
v-html=
"item3.Content"
v-html=
"item3.Content"
></view>
></view>
</view>
</view>
...
@@ -86,15 +83,13 @@
...
@@ -86,15 +83,13 @@
>
>
<view
<view
class=
"chooseNum"
class=
"chooseNum"
:class=
"
{
:class=
"
{ myAnswer: item3.IsAnswer }"
myAnswer: item2.myAnswer.find((e) => e == item3.Name),
@click="multipleChange(item3)"
}"
@click="multipleChange(index1, index2, index3)"
>
{{
item3
.
Name
}}
>
{{
item3
.
Name
}}
</view>
</view>
<view
<view
class=
"chooseName"
class=
"chooseName"
@
click=
"multipleChange(i
ndex1, index2, index
3)"
@
click=
"multipleChange(i
tem
3)"
v-html=
"item3.Content"
v-html=
"item3.Content"
></view>
></view>
</view>
</view>
...
@@ -106,7 +101,7 @@
...
@@ -106,7 +101,7 @@
<view
class=
"chooseNum"
>
{{
index3
+
1
}}
</view>
<view
class=
"chooseNum"
>
{{
index3
+
1
}}
</view>
<input
<input
type=
"text"
type=
"text"
v-model=
"item
2.myAnswer
"
v-model=
"item
3.Content
"
class=
"chooseName chooseName2"
class=
"chooseName chooseName2"
placeholder=
"请填写答案"
placeholder=
"请填写答案"
/>
/>
...
@@ -118,7 +113,7 @@
...
@@ -118,7 +113,7 @@
>
>
<textarea
<textarea
type=
"text"
type=
"text"
v-model=
"item
2.myAnswer
"
v-model=
"item
3.Content
"
class=
"chooseName chooseName2"
class=
"chooseName chooseName2"
placeholder=
"请填写答案"
placeholder=
"请填写答案"
/>
/>
...
@@ -169,16 +164,6 @@ export default {
...
@@ -169,16 +164,6 @@ export default {
timer
:
null
,
timer
:
null
,
timeOutEvent
:
false
,
timeOutEvent
:
false
,
});
});
data
.
data
.
DetailsList
.
forEach
((
item
)
=>
{
item
.
Title
=
item
.
Title
.
replace
(
/\<img/gi
,
'<img style="max-width:100%"'
);
item
.
QuestionContentObj
.
forEach
((
_item
)
=>
{
if
(
_item
.
QuestionKey
===
"multiple"
)
{
_item
.
myAnswer
=
[];
}
else
{
_item
.
myAnswer
=
"嘻嘻"
;
}
});
});
let
methods
=
{
let
methods
=
{
changeNumToHan
,
changeNumToHan
,
jumpPage
()
{
jumpPage
()
{
...
@@ -191,34 +176,22 @@ export default {
...
@@ -191,34 +176,22 @@ export default {
},
},
//----------------------------------------选题----------------------------------
//----------------------------------------选题----------------------------------
// 单选or判断
// 单选or判断
singerChange
(
index1
,
index2
,
index3
)
{
singerChange
(
item2
,
item3
)
{
data
.
data
.
DetailsList
[
index1
].
QuestionContentObj
[
index2
].
myAnswer
=
item2
.
SubAnwser
.
map
((
e
)
=>
{
data
.
data
.
DetailsList
[
index1
].
QuestionContentObj
[
index2
].
SubAnwser
[
if
(
e
.
Name
==
item3
.
Name
)
{
index3
e
.
IsAnswer
=
true
;
].
Name
;
}
else
{
e
.
IsAnswer
=
false
;
}
});
},
},
// 多选
// 多选
multipleChange
(
index1
,
index2
,
index3
)
{
multipleChange
(
item
)
{
let
myAnswer
=
data
.
data
.
DetailsList
[
index1
].
QuestionContentObj
[
index2
]
item
.
IsAnswer
=
!
item
.
IsAnswer
;
.
myAnswer
?
data
.
data
.
DetailsList
[
index1
].
QuestionContentObj
[
index2
].
myAnswer
:
[];
let
res
=
data
.
data
.
DetailsList
[
index1
].
QuestionContentObj
[
index2
].
SubAnwser
[
index3
].
Name
;
let
find
=
myAnswer
.
indexOf
(
res
);
if
(
find
==
-
1
)
{
myAnswer
.
push
(
res
);
}
else
{
myAnswer
.
splice
(
find
,
1
);
}
},
},
onchange
(
e
)
{
onchange
(
e
)
{
// data.questionH = 500;
data
.
ExamIndex
=
e
.
detail
.
current
;
data
.
ExamIndex
=
e
.
detail
.
current
;
if
(
data
.
ExamIndex
===
data
.
data
.
DetailsList
.
length
+
1
)
{
if
(
data
.
ExamIndex
===
data
.
data
.
DetailsList
.
length
+
1
)
{
console
.
log
(
"进入"
);
this
.
$emit
(
"getAfterTopic"
);
this
.
$emit
(
"getAfterTopic"
);
}
}
if
(
e
.
detail
.
current
==
0
)
{
if
(
e
.
detail
.
current
==
0
)
{
...
@@ -230,7 +203,7 @@ export default {
...
@@ -230,7 +203,7 @@ export default {
clearTimeout
(
data
.
timer
);
clearTimeout
(
data
.
timer
);
data
.
timer
=
setTimeout
(()
=>
{
data
.
timer
=
setTimeout
(()
=>
{
data
.
timeOutEvent
=
true
;
data
.
timeOutEvent
=
true
;
},
5
00
);
},
3
00
);
},
},
touchmove
(
e
)
{
touchmove
(
e
)
{
if
(
data
.
timeOutEvent
)
{
if
(
data
.
timeOutEvent
)
{
...
...
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