Browse Source

田字格

natasha 2 years ago
parent
commit
d5f744d4ac

+ 1 - 2
src/components/corpus/Strockred.vue

@@ -1,6 +1,6 @@
 <!--  -->
 <template>
-  <div class="strockredBox" v-if="targetDiv">
+  <div class="strockredBox">
     <div class="strockred">
       <div @click="resetHanzi" class="strock-play-box" v-if="1 == 2">
         <!-- <img src="../../assets/common/strock-play.png" class="strock-play" /> -->
@@ -59,7 +59,6 @@ export default {
           let _this = this;
           _this.$nextTick(() => {
             _this.initHanziwrite();
-            _this.$forceUpdate();
           });
         }
       },

+ 20 - 11
src/views/wordcard/cread.vue

@@ -132,7 +132,7 @@
       </div>
       <div class="word_main" v-if="writeTableData&&writeTableData.result">
         <div class="word_main_table" v-for="(itemT,indexT) in writeTableData.result" :key="indexT">
-            <writeTable :dataConfig="writeTableData" :data="itemT" :pageNumber="indexT+1" :totalNumber="writeTableData.result.length" />
+            <writeTable :type="typeIndex" :dataConfig="writeTableData" :data="itemT" :pageNumber="indexT+1" :totalNumber="writeTableData.result.length" />
         </div>
       </div>
     </div>
@@ -358,11 +358,15 @@ export default {
                                     }
                                 }
                             }
-                            allArr.push(JSON.parse(JSON.stringify(miaoArr)));
+                            arrOption.push(JSON.parse(JSON.stringify(miaoArr)));
                         }
                     }
-                    allArr.push(numrow)
+                    arrOption.push(numrow)
+                    arrOption = arrOption.slice(0,data.writeBoxNumber)
                   }
+                  arrOption.forEach(itemA=>{
+                    allArr.push(itemA)
+                  })
                 }
               });
               if (data.lastNullrow) {
@@ -386,6 +390,7 @@ export default {
           let allArr = [];
           data.option.forEach((item) => {
             let arr = [];
+            let arrOption = []
             // 拆分字和笔画为每一项
             arr.push({
               con: item.con,
@@ -447,11 +452,15 @@ export default {
                                 }
                             }
                         }
-                        allArr.push(JSON.parse(JSON.stringify(miaoArr)));
+                        arrOption.push(JSON.parse(JSON.stringify(miaoArr)));
                     }
                 }
-                allArr.push(numrow)
+                arrOption.push(numrow)
+                arrOption = arrOption.slice(0,data.writeBoxNumber)
               }
+              arrOption.forEach(itemA=>{
+                allArr.push(itemA)
+              })
             }
           });
           if (data.lastNullrow) {
@@ -462,7 +471,7 @@ export default {
                   write: true,
                 });
               }
-              allArr.push(numrow);
+              allArr.push(JSON.parse(JSON.stringify(numrow)));
             }
           }
           data.result = this.arrSplice(allArr, data.pageNumber);
@@ -511,13 +520,13 @@ export default {
                             sentenceItemMiao[s] = {}
                         }
                     }
-                sentenceMiao.push(sentenceItemMiao)
+                sentenceMiao.push(JSON.parse(JSON.stringify(sentenceItemMiao)))
                 }
                 this.loading = false;
                 // 描红内容
                 for(let l=0; l< data.miaoRedBoxNumber; l++){
                     for(let j=0; j<sentenceMiao.length; j++){
-                        sentenceArr.push(sentenceMiao[j])
+                        sentenceArr.push(JSON.parse(JSON.stringify(sentenceMiao[j])))
                     }
                 }
             }
@@ -528,12 +537,12 @@ export default {
                     for(let j=0; j<data.rowNumber; j++){
                         sentenceItemWrite.push({})
                     }
-                    sentenceArr.push(sentenceItemWrite)
+                    sentenceArr.push(JSON.parse(JSON.stringify(sentenceItemWrite)))
                 }
             }
             sentenceArr = sentenceArr.slice(0,Number(sentence)*Number(data.writeBoxNumber))
             sentenceArr.forEach((itemS,indexS)=>{
-                allArr.push(itemS)
+                allArr.push(JSON.parse(JSON.stringify(itemS)))
             })
         });
         if(data.lastNullrow>0){
@@ -542,7 +551,7 @@ export default {
                 for(let j=0; j<data.rowNumber; j++){
                     sentenceItemNull.push({})
                 }
-                allArr.push(sentenceItemNull)
+                allArr.push(JSON.parse(JSON.stringify(sentenceItemNull)))
             }
         }
         data.result = this.arrSplice(allArr, data.pageNumber);

+ 8 - 9
src/views/wordcard/writeTable.vue

@@ -5,7 +5,7 @@
             <div class="writeTop-item" :class="[indexI!==0?'writeTop-item-noLeft':'']" v-for="(itemI,indexI) in itemR" :key="indexI" :style="{width:dataConfig.width,height:dataConfig.width,borderColor:dataConfig.borderColor}">
                 <template v-if="itemI&&itemI.con&&!itemI.write&&!itemI.answer&&!itemI.miaoRed">
                     <Strockplay
-                        v-if="'writeTop-item-' + pageNumber + '-' + indexR + '-' + indexI"
+                        v-if="'writeTop-item-' + pageNumber + '-' + indexR + '-' + indexI + type"
                         className="adult-strockplay"
                         :strokePlayColor="dataConfig.borderColor"
                         :Book_text="itemI.con"
@@ -13,13 +13,11 @@
                         :strokeColor="dataConfig.fontColor"
                         :palyWidth="dataConfig.playWidth"
                         :BoxbgType="dataConfig.BoxbgType"
-                        :targetDiv="'writeTop-item-' + pageNumber + '-' + indexR + '-' + indexI"
+                        :targetDiv="'writeTop-item-' + pageNumber + '-' + indexR + '-' + indexI + type"
                      />
                 </template>
                 <template v-else-if="itemI&&itemI.answer">
                     <Strockplayredline
-                        v-if="'write-item-miaohong-' +
-                            pageNumber + '-' + indexR + '-' + indexI + Math.random().toString(36).substr(2)"
                         :Book_text="itemI.con"
                         :playStorkes="false"
                         :strokeColorgray="dataConfig.miaoRedBgcolor"
@@ -29,15 +27,15 @@
                         :BoxbgType="dataConfig.BoxbgType"
                         :targetDiv="
                             'write-item-miaohong-' +
-                            pageNumber + '-' + indexR + '-' + indexI + Math.random().toString(36).substr(2)
+                            pageNumber + '-' + indexR + '-' + indexI + type + Math.random().toString(36).substr(2)
                         "
                         :targetDivGray="'write-item-miaohong-gray-'+
-                            pageNumber + '-' + indexR + '-' + indexI + Math.random().toString(36).substr(2)"
+                            pageNumber + '-' + indexR + '-' + indexI + type + Math.random().toString(36).substr(2)"
                     />
                 </template>
                 <template v-else-if="itemI&&itemI.miaoRed">
                     <Strockred
-                        v-if="'write-item-' + pageNumber + '-' + indexR + '-' + indexI + Math.random().toString(36).substr(2)"
+                        v-if="'write-item-' + pageNumber + '-' + indexR + '-' + indexI + type"
                         className="adult-strockplay"
                         :strokePlayColor="dataConfig.borderColor"
                         :Book_text="itemI.con"
@@ -45,7 +43,7 @@
                         :hanzicolor="dataConfig.miaoRedBgcolor"
                         :drawingColor="dataConfig.writeColor"
                         :BoxbgType="dataConfig.BoxbgType"
-                        :targetDiv="'write-item-' + pageNumber + '-' + indexR + '-' + indexI + Math.random().toString(36).substr(2)"
+                        :targetDiv="'write-item-' + pageNumber + '-' + indexR + '-' + indexI + type + Math.random().toString(36).substr(2)"
                      />
                 </template>
                 <div v-else-if="itemI" class="tian-div" @click="freeWrite(itemI,indexR,indexI)">
@@ -109,7 +107,8 @@ export default {
     "dataConfig",
     "data",
     "pageNumber",
-    "totalNumber"
+    "totalNumber",
+    "type"
   ],
   data() {
     //这里存放数据