From aeadf5dce5646f19ada355b3a35eab4f5b0956a1 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期一, 27 五月 2024 18:34:57 +0800
Subject: [PATCH] ''
---
h5/pages/answer/answer.vue | 105 ++++++++++++++++++++++++++++++++--------------------
1 files changed, 64 insertions(+), 41 deletions(-)
diff --git a/h5/pages/answer/answer.vue b/h5/pages/answer/answer.vue
index 2f6a7b0..89aaf04 100644
--- a/h5/pages/answer/answer.vue
+++ b/h5/pages/answer/answer.vue
@@ -1,16 +1,13 @@
<template>
<view class="box">
<view class="box_bgimage" :style="{backgroundImage: 'url(' + bg + ')'}">
- <text class="box_bgimage_a">{{title}}</text>
- <text class="box_bgimage_b">{{content}}</text>
+ <text class="box_bgimage_a">{{ title }}</text>
+ <text class="box_bgimage_b">{{ content }}</text>
</view>
<view class="box_list">
<view class="box_list_answer" v-if="list && list.length > 0">
- <view class="box_list_answer_name">
- {{i + 1}}銆亄{list[i].title}}
- </view>
<!-- 鍒ゆ柇 -->
- <template v-if="list[i].type === 0">
+<!-- <template v-if="list[i].type === 0">
<view class="box_list_answer_item" v-for="(item, index) in list[i].options" :key="index" @click="select(index)">
<image src="@/static/video_error@2x.png" v-if="success && problemIndex === index" />
<image src="@/static/video@2x.png" v-else-if="!String(problemIndex) || problemIndex !== index" />
@@ -19,20 +16,35 @@
<text v-else-if="!String(problemIndex) || problemIndex !== index">{{item.code}}</text>
<text style="color: rgba(2, 94, 239, 1)" v-else-if="problemIndex === index">{{item.code}}</text>
</view>
- </template>
+ </template> -->
<!-- 鍗曢�� -->
- <template v-else-if="list[i].type === 1">
- <view class="box_list_answer_item" v-for="(item, index) in list[i].options" :key="index" @click="select(index)">
- <image src="@/static/video_error@2x.png" v-if="success && problemIndex === index" />
- <image src="@/static/video@2x.png" v-else-if="!String(problemIndex) || problemIndex !== index" />
- <image src="@/static/video_sel@2x.png" v-else-if="problemIndex === index" />
- <text style="color: rgba(237, 69, 69, 1)" v-if="success && problemIndex === index">{{item.code}} {{item.value}}</text>
- <text v-else-if="!String(problemIndex) || problemIndex !== index">{{item.code}} {{item.value}}</text>
- <text style="color: rgba(2, 94, 239, 1)" v-else-if="problemIndex === index">{{item.code}} {{item.value}}</text>
+ <view v-for="(item,index) in list" :key="index" class="list_item">
+ <template v-if="item.type == 1">
+ <view class="box_list_answer_name">
+ {{index + 1}}銆亄{item.title}}<text style="color:#ED4545;">*</text>
</view>
- </template>
+ <view class="box_list_answer_item" v-for="(line, lIndex) in item.options" :key="lIndex" @click="select(line, index)">
+ <image src="@/static/video@2x.png" v-if="!item.selAnswer || item.selAnswer !== line.code" />
+ <image src="@/static/video_sel@2x.png" v-if="item.selAnswer && item.selAnswer == line.code && item.answer === item.selAnswer" />
+ <image src="@/static/video_error@2x.png" v-if="item.selAnswer && item.selAnswer == line.code && item.answer !== item.selAnswer" />
+ <text v-if="!item.selAnswer"><text class="mr24">{{line.code}}</text> {{line.value}}</text>
+ <text v-if="item.selAnswer && item.answer === item.selAnswer" style="color: rgba(2, 94, 239, 1)" ><text class="mr24" style="color: rgba(2, 94, 239, 1)">{{line.code}}</text> {{line.value}}</text>
+ <text v-if="item.selAnswer && item.answer !== item.selAnswer" style="color: rgba(237, 69, 69, 1)" ><text class="mr24" style="color: rgba(237, 69, 69, 1)">{{line.code}}</text> {{line.value}}</text>
+ </view>
+ <view class="box_list_answer_tips" v-if="item.selAnswer && item.answer !== item.selAnswer">
+ <image src="@/static/ic_wrong@2x.png" />
+ <text>鍥炵瓟閿欒</text>
+ </view>
+ <view class="box_list_answer_tips" v-if="item.selAnswer && item.answer === item.selAnswer">
+ <image src="@/static/meeting/icon/ic_choose_sel@2x.png" />
+ <text>鍥炵瓟姝g‘</text>
+ </view>
+ </template>
+ </view>
+ <view class="empty"></view>
+ <view class="box_list_answer_btn" @click="next()">鎻愪氦</view>
<!-- 澶氶�� -->
- <template v-else-if="list[i].type === 2">
+<!-- <template v-else-if="list[i].type === 2">
<view class="box_list_answer_item" v-for="(item, index) in list[i].options" :key="index"
@click="selectMultiple(item.code)">
<image src="@/static/checkbox_wrong@2x.png"
@@ -47,27 +59,19 @@
<text style="color: rgba(2, 94, 239, 1)"
v-else-if="multiple.toString().indexOf(item.code) !== -1">{{item.code}} {{item.value}}</text>
</view>
- </template>
- <view class="box_list_answer_tips" v-if="success">
- <image src="@/static/ic_wrong@2x.png" />
- <text>鍥炵瓟閿欒</text>
- </view>
- <view class="box_list_answer_btn" @click="next()">涓嬩竴棰�</view>
+ </template> -->
</view>
</view>
</view>
</template>
<script>
+ import { getProblemsVO, getSystemDictData } from '@/api'
export default {
name: 'answer',
data() {
return {
- i: 0,
- problemIndex: null,
- multiple: null,
- success: false,
list: [],
bg: require("@/static/banner_dati.jpg"),
title: '',
@@ -83,7 +87,7 @@
methods: {
getInfo() {
// title
- this.$u.api.getSystemDictData({
+ getSystemDictData({
dictCode: 'SYSTEM',
label: 'THEME'
}).then(res => {
@@ -91,7 +95,8 @@
this.title = res.data.code
}
})
- this.$u.api.getSystemDictData({
+ // this.$u.api.getSystemDictData({
+ getSystemDictData({
dictCode: 'SYSTEM',
label: 'DESCRIPTION'
}).then(res => {
@@ -101,7 +106,7 @@
})
},
getProblems() {
- this.$u.api.getProblemsVO({ useType: 1 })
+ getProblemsVO({ useType: 1 })
.then(res => {
if (res.code === 200) {
res.data.forEach(item => {
@@ -113,9 +118,11 @@
if (item.type === 1 || item.type === 2) {
item.options = JSON.parse(item.options)
}
+ item.status = '0'
+ item.selAnswer = null
})
+ console.log('options', res.data);
this.list = res.data
- console.log(this.list)
}
// res.param.problemsDOList.forEach(item => {
// item.options = JSON.parse(item.options)
@@ -125,9 +132,13 @@
})
},
// 鍗曢�夐�夋嫨涓鐩�
- select(index) {
- console.log(index)
- this.problemIndex = index
+ select(line, i) {
+ this.list.forEach((item,index)=>{
+ if(index === i){
+ item.selAnswer = line.code
+ }
+ })
+ // this.problemIndex = index
},
sort(arr) {
arr.sort(function(a, b) {
@@ -157,6 +168,10 @@
},
// 涓嬩竴棰�
next() {
+ uni.navigateTo({
+ url: `/pages/userinfo/userinfo?userAnswerId=${1}`
+ })
+ return
if (this.list[this.i].type === 0 || this.list[this.i].type === 1) {
if (!String(this.problemIndex)) return
if (this.list[this.i].answer === this.list[this.i].options[this.problemIndex].code) {
@@ -236,6 +251,7 @@
.box_list_answer {
width: 100%;
height: 100%;
+ overflow-y: auto;
background: #FFFFFF;
border-radius: 16rpx;
padding: 30rpx;
@@ -253,6 +269,9 @@
box-sizing: border-box;
background: #F7F7F7;
border-radius: 8rpx;
+ display: flex;
+ align-items: center;
+ margin-bottom: 24rpx;
image {
width: 28rpx;
height: 28rpx;
@@ -265,14 +284,14 @@
}
}
}
+ .list_item{
+ margin-bottom: 24rpx;
+ }
.box_list_answer_item {
width: 100%;
display: flex;
align-items: center;
margin-bottom: 30rpx;
- &:last-child {
- margin-bottom: 0 !important;
- }
image {
width: 36rpx;
height: 36rpx;
@@ -288,11 +307,15 @@
background: #CCCCCC !important;
border: none !important;
}
+ .empty{
+ height: 160rpx;
+ width: 100%;
+ }
.box_list_answer_btn {
- position: absolute;
- bottom: 30rpx;
- left: 30rpx;
- width: calc(100% - 60rpx);
+ position: fixed;
+ bottom: 140rpx;
+ left: 60rpx;
+ width: 630rpx;
height: 88rpx;
line-height: 88rpx;
text-align: center;
--
Gitblit v1.9.3