11wqe1 1 week ago
parent
commit
522d012765
1 changed files with 23 additions and 15 deletions
  1. 23 15
      src/components/components/sortToolWorkShow.vue

+ 23 - 15
src/components/components/sortToolWorkShow.vue

@@ -6,11 +6,11 @@
                     <div class="con" style="width: 30%;">
                         <div>句子</div>
                         <div v-for="(i,index) in e" :key="index" style="display: flex;align-items: center;">
-                            <el-tooltip class="item" effect="dark" :content="i.value" placement="top-start">
-                             <div class="TitTimu" :style="{color:i.value == i.trA? '#409EFF' :'' }">{{ i.value }}</div>
+                            <el-tooltip class="item" effect="dark" :content="i.value.join(' ')" placement="top-start">
+                             <div class="TitTimu" :style="{color:JSON.stringify(i.value) == JSON.stringify(i.trA)? '#409EFF' :'' }">{{ i.value.join(' ') }}</div>
                             </el-tooltip>
                             
-                            <img style="height: 15px;width: 15px;margin-left: 10px;" v-if="i.value == i.trA" src="../../assets/right.png" alt="">
+                            <img style="height: 15px;width: 15px;margin-left: 10px;" v-if="JSON.stringify(i.value) == JSON.stringify(i.trA)" src="../../assets/right.png" alt="">
                         </div>
                         <div>
                             正确率
@@ -23,7 +23,7 @@
                         </div>
                         <template v-if="e.find(k => k.isD)">
                             <span v-for="(i,index) in e" :key="index+'p'">
-                                <span v-if="i.value == i.trA">{{ i.pro }}%</span>
+                                <span v-if="JSON.stringify(i.value) == JSON.stringify(i.trA)">{{ i.pro }}%</span>
                             </span>
                         </template>
                         <span v-else>
@@ -115,40 +115,49 @@
 
                 this.PData.forEach(e => {
                     JSON.parse(e.works).forEach((k,kin)=>{
-                        allWork[kin].push(k.chooseSenList.join(''))
+                        allWork[kin].push(k.chooseSenList)
                     })
                 });
 
+                console.log('llllllll',JSON.parse(JSON.stringify(allWork)));
+                
                 for (let index = 0; index < allWork.length; index++) {
                     groups[index] = this.countDuplicates(allWork[index])
                 }
 
+
+                console.log('groups',JSON.parse(JSON.stringify(groups)));
+                
+
                 // let groups = this.countDuplicates(allWork)
                 for (let index = 0; index < groups.length; index++) {
                     for (let kin = 0; kin < groups[index].length; kin++) {
+                        console.log('groups[index][kin]',groups[index][kin]);
                         groups[index][kin].pro = 0
-                        groups[index][kin].isD = groups[index][kin].value == JSON.parse(this.PData[0].works)[index].rightAnswer.join('')
-                        groups[index][kin].trA = JSON.parse(this.PData[0].works)[index].rightAnswer.join('')
+
+                        groups[index][kin].isD = JSON.stringify(groups[index][kin].value) == JSON.stringify(JSON.parse(this.PData[0].works)[index].rightAnswer)
+                        groups[index][kin].trA = JSON.parse(this.PData[0].works)[index].rightAnswer
                         groups[index][kin].pro = ((groups[index][kin].count / this.PData.length) * 100).toFixed()
                     }
                 }
 
                 
                 this.sortData = groups
-                // console.log('allWork',allWork);
+                console.log('sortData',sortData);
 
                 // console.log('groups',groups);
                 
             },
             countDuplicates(arr) {
-                const countMap = {};
-                
-                arr.forEach(item => {
-                    countMap[item] = (countMap[item] || 0) + 1;
+                const map = new Map();
+    
+                arr.forEach(subArr => {
+                    const key = JSON.stringify(subArr);
+                    map.set(key, (map.get(key) || 0) + 1);
                 });
                 
-                return Object.entries(countMap).map(([value, count]) => ({
-                    value,
+                return Array.from(map).map(([key, count]) => ({
+                    value: JSON.parse(key),
                     count
                 }));
             },
@@ -237,6 +246,5 @@
     white-space: nowrap;
     text-overflow: ellipsis;
     margin-bottom: 0 !important;
-    letter-spacing: 5px;
 }
 </style>