From 3d73fb33c46aada16a6060adcd4ea14bb33b6b2a Mon Sep 17 00:00:00 2001
From: 闫增涛 <1829501689@qq.com>
Date: 星期二, 09 四月 2024 10:39:11 +0800
Subject: [PATCH] 详情页tabs样式优化,答题添加页面退出拦截,合并代码

---
 packageBookService/pages/bookServices/examination/questionList/index.wxml |  130 ++++++++++++++++++++++++++++++------------
 1 files changed, 92 insertions(+), 38 deletions(-)

diff --git a/packageBookService/pages/bookServices/examination/questionList/index.wxml b/packageBookService/pages/bookServices/examination/questionList/index.wxml
index 654cac3..73943a5 100644
--- a/packageBookService/pages/bookServices/examination/questionList/index.wxml
+++ b/packageBookService/pages/bookServices/examination/questionList/index.wxml
@@ -10,13 +10,20 @@
     style="background-color:{{isNight ? '#222' : '#fff'}}"
   >
     <text class="title-name">{{questionList[showIndex].type}}</text
-    ><text class="title-score" style="color: {{isNight ? '#fff' : '#000'}};"
+    ><text
+      wx:if="{{questionList[showIndex].score}}"
+      class="title-score"
+      style="color: {{isNight ? '#fff' : '#000'}};"
       >(姣忛{{questionList[showIndex].score}}鍒�)</text
     >
   </view>
   <!-- 棰樼洰鍒楄〃 -->
-  <swiper class="swiper" bind:change="changeSwiper" current="{{currentIndex}}">
-    <swiper-item wx:for="{{questionList}}" wx:key="id">
+  <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"
@@ -26,27 +33,25 @@
         <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'}}">
-          <t-image src="{{item.stem.stemImage}}" />
+        <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-TxtAndImage"
+          class="title-content"
         >
-          <text>{{item.stem.stemTxt}}</text>
-          <t-image src="{{item.stem.stemImage}}" />
+          <view>{{item.stem.stemTxt}}</view>
+          <image src="{{item.stem.stemImage}}" mode="aspectFit" />
         </view>
         <!-- 瀵屾枃鏈� -->
-        <view
-          wx:elif="{{item.stemStyle == 'RichText'}} "
-          class="title-RichText"
-        >
-          <rich-text nodes="{{item.stem.stemTxt}}"></rich-text>
+        <view wx:elif="{{item.stemStyle == 'RichText'}} " class="title-content">
+          <mp-html content="{{item.stem.stemTxt}}" />
         </view>
         <!-- 濉┖棰� -->
         <view wx:if="{{item.questionType == 'completion'}}">
@@ -63,7 +68,7 @@
               data-value="{{item.option}}"
               data-id="{{item.id}}"
               data-index="{{inputItem.num}}"
-              class="title-input"
+              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'}}"
@@ -75,7 +80,9 @@
         </view>
       </view>
       <!-- 绛旈鍖哄煙 -->
-      <view class="question-answer">
+      <view
+        class="question-answer {{item.questionType == 'shortAnswer' ? 'textarea-center' : ''}}"
+      >
         <!-- 鍗曢�夐 -->
         <t-radio-group
           wx:if="{{item.questionType == 'singleChoice' || item.questionType == 'judge'}}"
@@ -101,7 +108,7 @@
             >
               <view
                 style="font-size: {{sliderValue || 32}}rpx;"
-                class="radio-item {{(answerType == 'option' || answerType == 'mock' ) && !submitStatus && item.userAnswer == contentItem.value ? 'radio-active' : isNight ? 'night' :''}} {{ (item.answer == contentItem.value && item.answer == item.userAnswer &&  submitStatus) ? 'radio-correct' :  (item.userAnswer == contentItem.value && item.userAnswer != item.answer && submitStatus) ?'radio-error' :'' }}"
+                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'}}"
@@ -110,21 +117,28 @@
                 <!-- 浠呭浘鐗� -->
                 <view wx:if="{{item.optionStyle == 'Image'}}" class="fl-center">
                   <text>{{contentItem.value}}銆�</text>
-                  <t-image src="{{contentItem.img}}" />
+                  <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>{{contentItem.txt}}</text>
-                  <t-image src="{{contentItem.img}}" />
+                  <view class="radio-textimg">{{contentItem.txt}}</view>
+                  <image src="{{contentItem.img}}" mode="aspectFit" />
                 </view>
                 <!-- 瀵屾枃鏈� -->
-                <view wx:if="{{item.optionStyle == 'RichText'}}">
+                <view
+                  wx:if="{{item.optionStyle == 'RichText'}}"
+                  class="judge-rich-box"
+                >
                   <text>{{contentItem.value}}銆�</text>
-                  <rich-text nodes="{{contentItem.txt}}"></rich-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)}}"
@@ -140,7 +154,6 @@
         </t-radio-group>
         <!-- 澶氶�夐 -->
         <t-checkbox-group
-          disabled="{{item.isComplete}}"
           class="checkbox-group"
           wx:elif="{{item.questionType == 'multipleChoice'}}"
           t-class="box"
@@ -157,34 +170,59 @@
             wx:key="contentIndex"
           >
             <t-checkbox
+              disabled="{{item.isComplete}}"
+              icon="rectangle"
               block="{{false}}"
               value="{{contentItem.value}}"
-              style="background-color:{{isNight ? '#000' :'#fff'}}; "
+              style="background-color:{{isNight ? '#222' :'#F9F9F9'}}; display: flex; align-items: center; margin-bottom: 20rpx;"
             >
               <!-- 浠呮枃瀛� -->
-              <text
+              <view
+                class="fl-center"
                 wx:if="{{item.optionStyle == 'Txt'}}"
-                style="color:{{ isNight  ? '#fff' : '#000'}}"
-                >{{contentItem.value}}銆亄{contentItem.txt}}</text
+                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>{{contentItem.value}}銆�</text>
-                <t-image src="{{contentItem.img}}" />
+                <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>{{contentItem.value}}銆�</text>
-                <text>{{contentItem.txt}}</text>
-                <t-image src="{{contentItem.img}}" />
+                <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'}}">
+              <view
+                wx:if="{{item.optionStyle == 'RichText'}}"
+                class="check-rich-box"
+              >
                 <text>{{contentItem.value}}銆�</text>
-                <rich-text nodes="{{contentItem.txt}}"></rich-text>
+                <rich-text
+                  nodes="{{contentItem.txt}}"
+                  class="multipleChoice"
+                ></rich-text>
               </view>
             </t-checkbox>
           </view>
@@ -196,7 +234,7 @@
           bind:change="onChangeRadio"
           data-value="{{item.option}}"
           data-id="{{item.id}}"
-          class="option-textarea"
+          class="option-textarea {{isNight ? 'textarea-night-color' :''}}"
           wx:elif="{{item.questionType == 'shortAnswer'}}"
           t-class="external-class"
           placeholder="璇疯緭鍏ユ枃瀛�"
@@ -206,6 +244,15 @@
           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"
+          >鏌ョ湅瑙f瀽</t-button
+        >
       </view>
       <!-- 鍗曢�夈�佸閫夎В鏋� -->
       <view
@@ -243,8 +290,8 @@
           wx:if="{{item.analysisCon}}"
           style="color: {{isNight ? '#fff' : '#000'}};"
         >
-          <text style="font-size: {{sliderValue || 32}}rpx;">绛旀瑙f瀽锛�</text
-          ><rich-text
+          <text style="font-size: {{sliderValue || 32}}rpx;" class="answer-analysis">绛旀瑙f瀽锛�</text>
+          <rich-text
             style="font-size: {{sliderValue || 32}}rpx;"
             nodes="{{item.analysisCon}}"
             class="analysis-content"
@@ -300,7 +347,7 @@
             >{{item.userAnswer}}</view
           >
         </view>
-        <view class="short-answer-mr">
+        <view class="short-answer-mr" style="margin-bottom: 50rpx">
           <text
             class="short-answer-fz;"
             style="color:{{isNight ? '#fff' : '#000'}};font-size:{{sliderValue || 28}}rpx;"
@@ -313,8 +360,15 @@
         </view>
       </view>
     </swiper-item>
-    <swiper-item wx:if="{{answerType !== 'collectQuestion'}}">
+    <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>

--
Gitblit v1.9.1