<!--pages/bookServices/examination/questionList/index.wxml-->
|
<view
|
class="question-list"
|
style="background-color:{{isNight ? '#222' : '#fff'}}"
|
>
|
<!-- 题型title -->
|
<view
|
class="question-title"
|
wx:if="{{questionList[showIndex].type}}"
|
style="background-color:{{isNight ? '#222' : '#fff'}}"
|
>
|
<text class="title-name">{{questionList[showIndex].type}}</text
|
><text
|
wx:if="{{questionList[showIndex].score}}"
|
class="title-score"
|
style="color: {{isNight ? '#fff' : '#000'}};"
|
>(每题{{questionList[showIndex].score}}分)</text
|
>
|
</view>
|
<!-- 题目列表 -->
|
<swiper
|
class="swiper"
|
bindanimationfinish="changeSwiper"
|
current="{{currentIndex}}"
|
>
|
<swiper-item wx:for="{{questionList}}" wx:key="id" style="overflow-y: auto">
|
<!-- 题干 -->
|
<view
|
class="question-stem title-score"
|
style="color: {{isNight ? '#fff' : '#000'}}; font-size: {{sliderValue || 32}}rpx;"
|
>
|
<!-- 题号 -->
|
<text>{{item.number}}.</text>
|
<!-- 仅文字 -->
|
<view
|
class="title-content"
|
wx:if="{{item.stemStyle == 'Txt' && item.questionType != 'completion'}}"
|
>{{item.stem.stemTxt}}</view
|
>
|
<!-- 仅图片 -->
|
<view wx:elif="{{item.stemStyle == 'Image'}}" class="title-content">
|
<image src="{{item.stem.stemImage}}" mode="aspectFit" />
|
</view>
|
<!-- 图片加文字 -->
|
<view
|
wx:elif="{{item.stemStyle == 'TxtAndImage'}}"
|
class="title-content"
|
>
|
<view>{{item.stem.stemTxt}}</view>
|
<image src="{{item.stem.stemImage}}" mode="aspectFit" />
|
</view>
|
<!-- 富文本 -->
|
<view wx:elif="{{item.stemStyle == 'RichText'}} " class="title-content">
|
<mp-html content="{{item.stem.stemTxt}}" />
|
</view>
|
<!-- 填空题 -->
|
<view wx:if="{{item.questionType == 'completion'}}">
|
<view
|
class="completion-box"
|
wx:for="{{item.stem}}"
|
wx:for-item="inputItem"
|
wx:for-index="inputIndex"
|
wx:key="inputIndex"
|
>
|
<t-input
|
disabled="{{item.isComplete}}"
|
bind:change="onChangeInput"
|
data-value="{{item.option}}"
|
data-id="{{item.id}}"
|
data-index="{{inputItem.num}}"
|
class="title-input {{isNight ? 'input-night-color' : ''}}"
|
style="border: 2rpx solid rgba(220,220,220,1);border-radius: 12rpx;background-color:{{isNight ? '#000' : '#fff'}}; "
|
placeholder-style="{{placeholderstyle}}"
|
wx:if="{{inputItem.data == 'input'}}"
|
placeholder="请输入文字"
|
value="{{item.userAnswer[inputItem.num]}}"
|
></t-input>
|
<text wx:else>{{inputItem}}</text>
|
</view>
|
</view>
|
</view>
|
<!-- 答题区域 -->
|
<view
|
class="question-answer {{item.questionType == 'shortAnswer' ? 'textarea-center' : ''}}"
|
>
|
<!-- 单选题 -->
|
<t-radio-group
|
wx:if="{{item.questionType == 'singleChoice' || item.questionType == 'judge'}}"
|
defaultValue="{{item.userAnswer}}"
|
disabled="{{item.isComplete}}"
|
bind:change="onChangeRadio"
|
class="radio-group"
|
data-value="{{item.option}}"
|
data-id="{{item.id}}"
|
>
|
<view
|
wx:for="{{item.option}}"
|
wx:for-item="contentItem"
|
wx:for-index="contentIndex"
|
wx:key="contentIndex"
|
>
|
<t-radio
|
value="{{contentItem.value}}"
|
icon="none"
|
placement="right"
|
borderless
|
style="background-color: {{isNight ? '#222' : '#fff'}}"
|
>
|
<view
|
style="font-size: {{sliderValue || 32}}rpx;"
|
class="radio-item {{(answerType == 'option' || answerType == 'mock' ) && !submitStatus && item.userAnswer == contentItem.value ? 'radio-active' : isNight ? 'night' :''}} {{item.userAnswer == contentItem.value && submitStatus ? item.isRight ? 'radio-correct' : 'radio-error' :''}}"
|
>
|
<!-- 仅文字 -->
|
<text wx:if="{{item.optionStyle == 'Txt'}}"
|
>{{contentItem.value}}、{{contentItem.txt}}</text
|
>
|
<!-- 仅图片 -->
|
<view wx:if="{{item.optionStyle == 'Image'}}" class="fl-center">
|
<text>{{contentItem.value}}、</text>
|
<image src="{{contentItem.img}}" mode="aspectFit" />
|
</view>
|
<!-- 文字加图片 -->
|
<view
|
wx:if="{{item.optionStyle == 'TxtAndImage'}}"
|
class="fl-center"
|
style="height: min-content"
|
>
|
<text>{{contentItem.value}}、</text>
|
<text class="radio-textimg">{{contentItem.txt}}</text>
|
|
<image src="{{contentItem.img}}" mode="aspectFit" />
|
</view>
|
<!-- 富文本 -->
|
<view
|
wx:if="{{item.optionStyle == 'RichText'}}"
|
class="judge-rich-box"
|
>
|
<text>{{contentItem.value}}、</text>
|
<rich-text
|
nodes="{{ contentItem.txt}}"
|
style="display: flex; align-items: center; width: 100%"
|
></rich-text>
|
</view>
|
<text
|
wx:if="{{submitStatus && (item.answer == contentItem.value && item.answer == item.userAnswer)}}"
|
>对</text
|
>
|
<text
|
wx:if="{{ submitStatus && (item.userAnswer == contentItem.value && item.userAnswer != item.answer)}}"
|
>错</text
|
>
|
</view>
|
</t-radio>
|
</view>
|
</t-radio-group>
|
<!-- 多选题 -->
|
<t-checkbox-group
|
class="checkbox-group"
|
wx:elif="{{item.questionType == 'multipleChoice'}}"
|
t-class="box"
|
borderless
|
bind:change="onChangeRadio"
|
data-value="{{item.option}}"
|
data-id="{{item.id}}"
|
defaultValue="{{item.userAnswer}}"
|
>
|
<view
|
wx:for="{{item.option}}"
|
wx:for-item="contentItem"
|
wx:for-index="contentIndex"
|
wx:key="contentIndex"
|
>
|
<t-checkbox
|
disabled="{{item.isComplete}}"
|
icon="rectangle"
|
block="{{false}}"
|
value="{{contentItem.value}}"
|
style="background-color:{{isNight ? '#222' :'#F9F9F9'}}; display: flex; align-items: center; margin-bottom: 20rpx;"
|
>
|
<!-- 仅文字 -->
|
<view
|
class="fl-center"
|
wx:if="{{item.optionStyle == 'Txt'}}"
|
style="color:{{ isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;"
|
>
|
<text>{{contentItem.value}}、</text>
|
<text class="check-text-box">{{contentItem.txt}}</text>
|
</view>
|
|
<!-- 仅图片 -->
|
<view wx:if="{{item.optionStyle == 'Image'}}" class="fl-center">
|
<text
|
style="color:{{ isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;"
|
>{{contentItem.value}}、</text
|
>
|
<image src="{{contentItem.img}}" mode="aspectFit" />
|
</view>
|
<!-- 文字加图片 -->
|
<view
|
wx:if="{{item.optionStyle == 'TxtAndImage'}}"
|
class="fl-center"
|
>
|
<text
|
style="color:{{ isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;"
|
>{{contentItem.value}}、</text
|
>
|
<text
|
style="color:{{ isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 32}}rpx;"
|
>{{contentItem.txt}}</text
|
>
|
<image
|
src="{{contentItem.img}}"
|
wx:if="{{contentItem.img}}"
|
mode="aspectFit"
|
/>
|
</view>
|
<!-- 富文本 -->
|
<view
|
wx:if="{{item.optionStyle == 'RichText'}}"
|
class="check-rich-box"
|
>
|
<text>{{contentItem.value}}、</text>
|
<rich-text
|
nodes="{{contentItem.txt}}"
|
class="multipleChoice"
|
></rich-text>
|
</view>
|
</t-checkbox>
|
</view>
|
</t-checkbox-group>
|
<!-- 简答 翻译 -->
|
<t-textarea
|
disabled="{{item.isComplete}}"
|
value="{{item.userAnswer}}"
|
bind:change="onChangeRadio"
|
data-value="{{item.option}}"
|
data-id="{{item.id}}"
|
class="option-textarea {{isNight ? 'textarea-night-color' :''}}"
|
wx:elif="{{item.questionType == 'shortAnswer'}}"
|
t-class="external-class"
|
placeholder="请输入文字"
|
bordered
|
maxlength="500"
|
disableDefaultPadding="{{true}}"
|
indicator
|
style="background-color:{{isNight ? '#000' : '#fff'}}; "
|
/>
|
</view>
|
<!-- 我的错题、收藏模式下,查看解析按钮 -->
|
<view
|
wx:if="{{(answerType == 'collectQuestion' || answerType == 'errorQuestion') && (item.questionType == 'multipleChoice' || item.questionType == 'completion' || item.questionType == 'shortAnswer')}}"
|
style="margin-left: 40rpx"
|
>
|
<t-button theme="primary" class="view-parsing" bind:tap="viewParsing"
|
>查看解析</t-button
|
>
|
</view>
|
<!-- 单选、多选解析 -->
|
<view
|
class="analysis"
|
wx:if="{{item.isComplete && (item.questionType == 'singleChoice' || item.questionType == 'judge' || item.questionType == 'multipleChoice')}}"
|
>
|
<view class="analysis-answer">
|
<view
|
class="answer-correct answer-center"
|
style="font-size: {{sliderValue || 32}}rpx;"
|
>
|
<text class="analysis-title-box">正确答案:</text>
|
<rich-text
|
nodes="{{item.answer}}"
|
style="font-size: {{sliderValue || 40}}rpx;"
|
></rich-text>
|
</view>
|
<view
|
class="answer-center marginL {{item.isRight ? 'answer-correct' : 'answer-error'}}"
|
wx:if="{{item.questionType !== 'shortAnswer'}}"
|
>
|
<text
|
class="analysis-title-box"
|
style="font-size: {{sliderValue || 32}}rpx;"
|
>您的答案:</text
|
><text
|
class="answer-text"
|
style="font-size: {{sliderValue || 40}}rpx;"
|
>{{item.userAnswer}}</text
|
>
|
</view>
|
</view>
|
<view
|
class="analysis-text"
|
wx:if="{{item.analysisCon}}"
|
style="color: {{isNight ? '#fff' : '#000'}};"
|
>
|
<text style="font-size: {{sliderValue || 32}}rpx;">答案解析:</text>
|
<rich-text
|
style="font-size: {{sliderValue || 32}}rpx;"
|
nodes="{{item.analysisCon}}"
|
class="analysis-content"
|
></rich-text>
|
</view>
|
</view>
|
<!-- 填空、简答解析 -->
|
<view
|
class="analysis"
|
wx:if="{{(item.questionType == 'shortAnswer' || item.questionType == 'completion') && item.isComplete}}"
|
>
|
<view
|
style="display: {{item.questionType == 'completion' ? 'flex' : 'block'}}"
|
>
|
<text
|
wx:if="{{item.questionType == 'completion'}}"
|
class="short-answer-fz answer-correct"
|
style="font-size:{{sliderValue || 32}}rpx;"
|
>正确答案:</text
|
>
|
<text
|
wx:if="{{item.questionType == 'shortAnswer'}}"
|
class="short-answer-fz"
|
style="color:{{isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 28}}rpx;"
|
>
|
参考答案:
|
</text>
|
<rich-text
|
wx:if="{{item.questionType == 'shortAnswer'}}"
|
nodes="{{item.answer}}"
|
style="font-size:{{sliderValue || 28}}rpx; color:{{item.questionType == 'completion' ? '#1FBC1F' : isNight ? '#fff' : '#000'}}"
|
></rich-text>
|
<view
|
wx:if="{{item.questionType == 'completion'}}"
|
style="font-size:{{sliderValue || 28}}rpx;"
|
class="short-answer-fz answer-correct"
|
>{{item.answer}}</view
|
>
|
</view>
|
<view
|
wx:if="{{item.questionType == 'completion'}}"
|
class="short-answer-mr"
|
style="display: {{item.questionType == 'completion' ? 'flex' : 'block'}}"
|
>
|
<text
|
class="short-answer-fz {{item.isRight ? 'answer-correct' : 'answer-error'}}"
|
style="font-size:{{sliderValue || 28}}rpx;"
|
>您的答案:</text
|
>
|
<view
|
class="short-answer-fz {{item.isRight ? 'answer-correct' : 'answer-error'}}"
|
style="color:{{isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 28}}rpx;"
|
>{{item.userAnswer}}</view
|
>
|
</view>
|
<view class="short-answer-mr" style="margin-bottom: 50rpx">
|
<text
|
class="short-answer-fz;"
|
style="color:{{isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 28}}rpx;"
|
>答案解析:</text
|
>
|
<rich-text
|
nodes="{{item.analysisCon}}"
|
style="font-size:{{sliderValue || 28}}rpx;;color:{{isNight ? '#fff' : '#000'}}"
|
></rich-text>
|
</view>
|
</view>
|
</swiper-item>
|
<swiper-item
|
wx:if="{{answerType !== 'collectQuestion' && questionList.length}}"
|
>
|
<text>没有更多了。。。</text>
|
</swiper-item>
|
<swiper-item wx:if="{{!questionList.length}}">
|
<view class="noData">
|
<t-empty icon="folder-open" description="暂无数据" />
|
</view>
|
</swiper-item>
|
</swiper>
|
</view>
|