|
|
@@ -15,7 +15,10 @@
|
|
|
<button class="game-rule" />
|
|
|
</div>
|
|
|
|
|
|
- <div class="question-inner">
|
|
|
+ <div
|
|
|
+ v-if="!isShowLoading"
|
|
|
+ class="question-inner"
|
|
|
+ >
|
|
|
<p class="question">
|
|
|
{{ questionList[currentQuestionIdx].question }}
|
|
|
</p>
|
|
|
@@ -96,6 +99,11 @@
|
|
|
>
|
|
|
下一题
|
|
|
</button>
|
|
|
+ <van-loading
|
|
|
+ v-show="isShowLoading"
|
|
|
+ class="loading"
|
|
|
+ type="spinner"
|
|
|
+ />
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
@@ -106,7 +114,7 @@ import { useRoute, useRouter } from "vue-router"
|
|
|
import { useStore } from "vuex"
|
|
|
import dayjs from 'dayjs'
|
|
|
import { shuffle } from 'lodash'
|
|
|
-import { addScore, getScore } from '@/api.js'
|
|
|
+import { addScore, getScore, getExamQuestionList } from '@/api.js'
|
|
|
|
|
|
const route = useRoute()
|
|
|
const router = useRouter()
|
|
|
@@ -117,6 +125,41 @@ const {
|
|
|
windowSizeWhenDesignForRef,
|
|
|
} = useSizeAdapt(390, 752)
|
|
|
|
|
|
+const isShowLoading = ref(true)
|
|
|
+getExamQuestionList().then((res) => {
|
|
|
+ questionList.value = res.map((questionItem) => {
|
|
|
+ const optionsAndAnswer = JSON.parse(questionItem.answer)
|
|
|
+ console.log(optionsAndAnswer)
|
|
|
+ const ret = {
|
|
|
+ question: questionItem.question,
|
|
|
+ answerOptions: optionsAndAnswer.answer.map((answerItem) => {
|
|
|
+ return answerItem.name
|
|
|
+ }),
|
|
|
+ rightOptionIdx: optionsAndAnswer.answer.findIndex((answerItem) => {
|
|
|
+ return answerItem.val === optionsAndAnswer.correct
|
|
|
+ }),
|
|
|
+ desc: questionItem.description
|
|
|
+ }
|
|
|
+ return ret
|
|
|
+ })
|
|
|
+
|
|
|
+ isShowLoading.value = false
|
|
|
+
|
|
|
+ timeCountIntervalId = setInterval(() => {
|
|
|
+ timeCount.value--
|
|
|
+ if (timeCount.value === 0) {
|
|
|
+ clearInterval(timeCountIntervalId)
|
|
|
+ router.replace({
|
|
|
+ name: 'ExamPaper3',
|
|
|
+ query: {
|
|
|
+ correntCount: correntCount.value,
|
|
|
+ bonusPoint: bonusPoint.value,
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }, 1000)
|
|
|
+})
|
|
|
+
|
|
|
function onClickReturnHome() {
|
|
|
router.push({
|
|
|
name: 'HomeView',
|
|
|
@@ -128,19 +171,6 @@ function onClickReturnHome() {
|
|
|
*/
|
|
|
const timeCount = ref(store.state.gameRuleList[1].second)
|
|
|
let timeCountIntervalId = null
|
|
|
-timeCountIntervalId = setInterval(() => {
|
|
|
- timeCount.value--
|
|
|
- if (timeCount.value === 0) {
|
|
|
- clearInterval(timeCountIntervalId)
|
|
|
- router.replace({
|
|
|
- name: 'ExamPaper3',
|
|
|
- query: {
|
|
|
- correntCount: correntCount.value,
|
|
|
- bonusPoint: bonusPoint.value,
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
-}, 1000)
|
|
|
onBeforeUnmount(() => {
|
|
|
clearInterval(timeCountIntervalId)
|
|
|
})
|
|
|
@@ -165,33 +195,33 @@ const correntCount = ref(0)
|
|
|
*/
|
|
|
const selectedIdx = ref(null)
|
|
|
const questionList = ref([
|
|
|
- {
|
|
|
- question: '你是sb吗?',
|
|
|
- answerOptions: [
|
|
|
- '是',
|
|
|
- '不是',
|
|
|
- ],
|
|
|
- rightOptionIdx: 0,
|
|
|
- desc: '这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本',
|
|
|
- },
|
|
|
- {
|
|
|
- question: '你是sb吗?',
|
|
|
- answerOptions: [
|
|
|
- '是',
|
|
|
- '不是',
|
|
|
- ],
|
|
|
- rightOptionIdx: 0,
|
|
|
- desc: '这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本',
|
|
|
- },
|
|
|
- {
|
|
|
- question: '你是sb吗?',
|
|
|
- answerOptions: [
|
|
|
- '是',
|
|
|
- '不是',
|
|
|
- ],
|
|
|
- rightOptionIdx: 0,
|
|
|
- desc: '这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本',
|
|
|
- },
|
|
|
+ // {
|
|
|
+ // question: '你是sb吗?',
|
|
|
+ // answerOptions: [
|
|
|
+ // '是',
|
|
|
+ // '不是',
|
|
|
+ // ],
|
|
|
+ // rightOptionIdx: 0,
|
|
|
+ // desc: '这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本',
|
|
|
+ // },
|
|
|
+ // {
|
|
|
+ // question: '你是sb吗?',
|
|
|
+ // answerOptions: [
|
|
|
+ // '是',
|
|
|
+ // '不是',
|
|
|
+ // ],
|
|
|
+ // rightOptionIdx: 0,
|
|
|
+ // desc: '这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本',
|
|
|
+ // },
|
|
|
+ // {
|
|
|
+ // question: '你是sb吗?',
|
|
|
+ // answerOptions: [
|
|
|
+ // '是',
|
|
|
+ // '不是',
|
|
|
+ // ],
|
|
|
+ // rightOptionIdx: 0,
|
|
|
+ // desc: '这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本这是一段文本',
|
|
|
+ // },
|
|
|
])
|
|
|
const currentQuestionIdx = ref(0)
|
|
|
const isSubmitted = computed(() => {
|