natasha 7 months ago
parent
commit
5361123ba9

+ 172 - 160
src/components/Adult/phonePreview/NumberSelectHasRecord.vue

@@ -1,82 +1,95 @@
 <!--  -->
 <template>
   <div class="Big-Book-prev-Textdes" v-if="curQue">
-      <div class="left-con">
-          <ul>
-              <li v-for="(item,index) in curQue.option" :key="index" :class="[selectCon.indexOf(index)>-1?'active':'']" @click="handleClick(item,index)">
-                  {{item.con}}
-              </li>
-          </ul>
-          <a :class="['sureBtn',selectCon.length>0?'active':'']" @click="handleSure">确认</a>
-      </div>
-      <div class="right-con">
-          <ul>
-              <li v-for="(item,index) in rightList" :key="index">
-                  <span v-for="(items,indexs) in item" :key="indexs">
-                      {{items}}
-                  </span>
-                  <Soundrecord @handleWav="handleWav" type="mini" class="luyin-box" />
-              </li>
-          </ul>
-          <a :class="['clearBtn']" @click="handleClean" v-if="rightList.length>0">清空</a>
-      </div>
+    <div class="left-con">
+      <ul>
+        <li
+          v-for="(item, index) in curQue.option"
+          :key="index"
+          :class="[selectCon.indexOf(index) > -1 ? 'active' : '']"
+          @click="handleClick(item, index)"
+        >
+          {{ item.con }}
+        </li>
+      </ul>
+      <a
+        :class="['sureBtn', selectCon.length > 0 ? 'active' : '']"
+        @click="handleSure"
+        >确认</a
+      >
+    </div>
+    <div class="right-con">
+      <ul>
+        <li v-for="(item, index) in rightList" :key="index">
+          <span v-for="(items, indexs) in item" :key="indexs">
+            {{ items }}
+          </span>
+          <Soundrecord @handleWav="handleWav" type="mini" class="luyin-box" />
+        </li>
+      </ul>
+      <a :class="['clearBtn']" @click="handleClean" v-if="rightList.length > 0"
+        >清空</a
+      >
+    </div>
   </div>
 </template>
 
 <script>
 import Soundrecord from "../preview/Soundrecord.vue"; // 录音模板
 export default {
-  components: {Soundrecord},
+  components: { Soundrecord },
   props: ["curQue"],
   data() {
     return {
-        rightList: [],
-        selectConIndex: [], // 选择内容的索引
-        selectCon: [], // 选择内容
+      rightList: [],
+      selectConIndex: [], // 选择内容的索引
+      selectCon: [] // 选择内容
     };
   },
   computed: {},
   watch: {},
   //方法集合
   methods: {
-      handleWav(data) {
-        
-      },
+    handleWav(data) {},
     // 点击字
-    handleClick (word,index) {
-        if (this.selectConIndex.indexOf(index) > -1) {
-            this.selectConIndex.splice(this.selectConIndex.indexOf(index), 1)
-            this.selectCon.splice(this.selectConIndex.indexOf(index), 1)
-        } else {
-            this.selectConIndex.push(index)
-            this.selectCon.push(index)
-        }
+    handleClick(word, index) {
+      if (this.selectConIndex.indexOf(index) > -1) {
+        this.selectConIndex.splice(this.selectConIndex.indexOf(index), 1);
+        this.selectCon.splice(this.selectConIndex.indexOf(index), 1);
+      } else {
+        this.selectConIndex.push(index);
+        this.selectCon.push(index);
+      }
     },
     // 点击确定按钮
-    handleSure(){
-        let flag = false
-        this.rightList.forEach((item, index) => {
-            if (item.toString() == this.selectCon.toString()) {
-                flag = true
-                return false
-            }
-        })
-        if (flag) {
-            this.$message.warning('已选择过相同选项');
-        }else{
-            this.rightList.push(this.selectCon)
+    handleSure() {
+      let flag = false;
+      this.rightList.forEach((item, index) => {
+        if (item.toString() == this.selectCon.toString()) {
+          flag = true;
+          return false;
         }
-        this.selectConIndex = []
-        this.selectCon = []
+      });
+      if (flag) {
+        this.$message({
+          showClose: true,
+          message: "已选择过相同选项",
+          type: "warning",
+          duration: 2000
+        });
+      } else {
+        this.rightList.push(this.selectCon);
+      }
+      this.selectConIndex = [];
+      this.selectCon = [];
     },
     // 清空
-    handleClean(){
-        this.rightList = []
-    },
+    handleClean() {
+      this.rightList = [];
+    }
   },
   //生命周期 - 创建完成(可以访问当前this实例)
-  created() {
-  },
+  created() {},
   //生命周期 - 挂载完成(可以访问DOM元素)
   mounted() {},
   beforeCreate() {}, //生命周期 - 创建之前
@@ -85,118 +98,117 @@ export default {
   updated() {}, //生命周期 - 更新之后
   beforeDestroy() {}, //生命周期 - 销毁之前
   destroyed() {}, //生命周期 - 销毁完成
-  activated() {}, //如果页面有keep-alive缓存功能,这个函数会触发
+  activated() {} //如果页面有keep-alive缓存功能,这个函数会触发
 };
 </script>
-<style lang='scss' scoped>
+<style lang="scss" scoped>
 //@import url(); 引入公共css类
-.Big-Book-prev-Textdes{
-    display: flex;
-    justify-content: space-between;
-    align-items: stretch;
-   .left-con{
-       background: #FFFFFF;
-       border: 1px solid rgba(0, 0, 0, 0.1);
-       border-radius: 8px;
-       padding: 16px 25px 72px 25px;
-       position: relative;
-       width: 324px;
-       margin-right: 16px;
-       box-sizing: border-box;
-       ul{
-           display: flex;
-           flex-flow: wrap;
-           li{
-                padding: 8px;
-                min-width: 52px;
-                background: #FFFFFF;
-                border: 1px solid rgba(0, 0, 0, 0.1);
-                box-sizing: border-box;
-                border-radius: 8px;
-                font-family: 'FZJCGFKTK';
-                text-align: center;
-                font-size: 24px;
-                line-height: 150%;
-                color: #000000;
-                margin: 8px;
-                cursor: pointer;
-                &.active{
-                    background: #F7F7F7;
-                    border: 1px solid #00C84B;
-                }
-           }
-       }
-       .sureBtn{
-            position: absolute;
-            bottom: 24px;
-            right: 34px;
-            width: 64px;
-            height: 32px;
-            background: #D8D8D8;
-            border: 1px solid rgba(0, 0, 0, 0.1);
-            box-sizing: border-box;
-            border-radius: 8px;
-            color: #FFFFFF;
-            font-size: 16px;
-            display: flex;
-            justify-content: center;
-            align-items: center;
-            &.active{
-                background: #3EC65C;
-
-            }
-       }
-   }
-   .right-con{
-        background: #F8F8F8;
+.Big-Book-prev-Textdes {
+  display: flex;
+  justify-content: space-between;
+  align-items: stretch;
+  .left-con {
+    background: #ffffff;
+    border: 1px solid rgba(0, 0, 0, 0.1);
+    border-radius: 8px;
+    padding: 16px 25px 72px 25px;
+    position: relative;
+    width: 324px;
+    margin-right: 16px;
+    box-sizing: border-box;
+    ul {
+      display: flex;
+      flex-flow: wrap;
+      li {
+        padding: 8px;
+        min-width: 52px;
+        background: #ffffff;
         border: 1px solid rgba(0, 0, 0, 0.1);
         box-sizing: border-box;
         border-radius: 8px;
-        position: relative;
-        width: 440px;
-        ul{
-            display: flex;
-            flex-flow: wrap;
-            padding: 16px 15px 72px 15px;
+        font-family: "FZJCGFKTK";
+        text-align: center;
+        font-size: 24px;
+        line-height: 150%;
+        color: #000000;
+        margin: 8px;
+        cursor: pointer;
+        &.active {
+          background: #f7f7f7;
+          border: 1px solid #00c84b;
         }
-        li{
-            display: flex;
-            align-items: center;
-            background: #FFFFFF;
-            border: 1px solid rgba(0, 0, 0, 0.1);
-            box-sizing: border-box;
-            border-radius: 8px;
-            padding: 8px 7px 8px 15px;
-            margin: 8px;
-            span{
-                font-size: 24px;
-                line-height: 150%;
-                color: #000000;
-                font-family: 'FZJCGFKTK';
-            }
-            .luyin-box{
-                width: 64px;
-                height: 32px;
-                // border: 1px solid rgba(0, 0, 0, 0.1);
-                border-radius: 8px;
-                margin-left: 4px;
-            }
-        }
-        .clearBtn{
-            position: absolute;
-            bottom: 24px;
-            right: 34px;
-            width: 64px;
-            height: 32px;
-            background: #32A5D8;
-            box-sizing: border-box;
-            border-radius: 8px;
-            color: #FFFFFF;
-            font-size: 16px;
-            display: flex;
-            justify-content: center;
-            align-items: center;
-        }
-   }
+      }
+    }
+    .sureBtn {
+      position: absolute;
+      bottom: 24px;
+      right: 34px;
+      width: 64px;
+      height: 32px;
+      background: #d8d8d8;
+      border: 1px solid rgba(0, 0, 0, 0.1);
+      box-sizing: border-box;
+      border-radius: 8px;
+      color: #ffffff;
+      font-size: 16px;
+      display: flex;
+      justify-content: center;
+      align-items: center;
+      &.active {
+        background: #3ec65c;
+      }
+    }
+  }
+  .right-con {
+    background: #f8f8f8;
+    border: 1px solid rgba(0, 0, 0, 0.1);
+    box-sizing: border-box;
+    border-radius: 8px;
+    position: relative;
+    width: 440px;
+    ul {
+      display: flex;
+      flex-flow: wrap;
+      padding: 16px 15px 72px 15px;
+    }
+    li {
+      display: flex;
+      align-items: center;
+      background: #ffffff;
+      border: 1px solid rgba(0, 0, 0, 0.1);
+      box-sizing: border-box;
+      border-radius: 8px;
+      padding: 8px 7px 8px 15px;
+      margin: 8px;
+      span {
+        font-size: 24px;
+        line-height: 150%;
+        color: #000000;
+        font-family: "FZJCGFKTK";
+      }
+      .luyin-box {
+        width: 64px;
+        height: 32px;
+        // border: 1px solid rgba(0, 0, 0, 0.1);
+        border-radius: 8px;
+        margin-left: 4px;
+      }
+    }
+    .clearBtn {
+      position: absolute;
+      bottom: 24px;
+      right: 34px;
+      width: 64px;
+      height: 32px;
+      background: #32a5d8;
+      box-sizing: border-box;
+      border-radius: 8px;
+      color: #ffffff;
+      font-size: 16px;
+      display: flex;
+      justify-content: center;
+      align-items: center;
+    }
+  }
 }
-</style>
+</style>

+ 6 - 1
src/components/Adult/phonePreview/SentenceSortQP.vue

@@ -227,7 +227,12 @@ export default {
       this.$forceUpdate();
     },
     NOremove() {
-      this.$message.warning("当前没有可清空的数据");
+      this.$message({
+        showClose: true,
+        message: "当前没有可清空的数据",
+        type: "warning",
+        duration: 2000
+      });
       return;
     },
     // 判断对错

+ 6 - 1
src/components/Adult/phonePreview/Voicefullscreen-ly.vue

@@ -2180,7 +2180,12 @@ export default {
           this.$message.success("收藏成功!");
         });
       } else {
-        this.$message.warning("权限不足!");
+        this.$message({
+          showClose: true,
+          message: "权限不足!",
+          type: "warning",
+          duration: 2000
+        });
       }
     },
     //取消收藏

+ 1 - 0
src/components/Adult/phonePreview/WordPhrase.vue

@@ -382,6 +382,7 @@
         :currentTreeID="currentTreeID"
         :bg="data && data.bg ? data.bg : null"
         :ed="data && data.ed ? data.ed : null"
+        :baseSizePhone="baseSizePhone"
         type="newWordDetail"
       />
     </div>

+ 18 - 4
src/components/Adult/phonePreview/components/Freewrite.vue

@@ -139,7 +139,12 @@ export default {
     },
     removeImage() {
       if (this.hasPlay) {
-        this.$message.warning("正在播放,不能删除");
+        this.$message({
+          showClose: true,
+          message: "正在播放,不能删除",
+          type: "warning",
+          duration: 2000
+        });
         return;
       }
       if (this.imgIndex === null) return;
@@ -156,7 +161,12 @@ export default {
     },
     play(index) {
       if (this.hasPlay) {
-        this.$message.warning("请等待播放完成");
+        this.$message({
+          showClose: true,
+          message: "请等待播放完成",
+          type: "warning",
+          duration: 2000
+        });
         return;
       }
       this.$refs.esign.reset();
@@ -244,8 +254,12 @@ export default {
         .catch(err => {
           this.saveShow = false;
 
-          console.log(err);
-          this.$message.warning("请先书写在保存");
+          this.$message({
+            showClose: true,
+            message: "请先书写在保存",
+            type: "warning",
+            duration: 2000
+          });
         });
     }
   },

+ 12 - 2
src/components/Adult/phonePreview/components/FreewriteLettle.vue

@@ -123,7 +123,12 @@ export default {
       let _this = this;
       if (this.currenHzData.history) {
         if (this.hasPlay) {
-          this.$message.warning("请等待播放完成");
+          this.$message({
+            showClose: true,
+            message: "请等待播放完成",
+            type: "warning",
+            duration: 2000
+          });
           return;
         }
         this.$refs.esign.reset();
@@ -277,7 +282,12 @@ export default {
           // this.textOcr(res.replace("data:image/png;base64,", ""));
         })
         .catch(err => {
-          this.$message.warning("请先书写在保存");
+          this.$message({
+            showClose: true,
+            message: "请先书写再保存",
+            type: "warning",
+            duration: 2000
+          });
         });
     }
   },

+ 12 - 2
src/components/Adult/phonePreview/components/Practice.vue

@@ -310,7 +310,12 @@ export default {
           this.$message.success("收藏成功!");
         });
       } else {
-        this.$message.warning("权限不足!");
+        this.$message({
+          showClose: true,
+          message: "权限不足!",
+          type: "warning",
+          duration: 2000
+        });
       }
     },
     //取消收藏
@@ -369,7 +374,12 @@ export default {
     },
     resetHuahua() {
       if (this.$refs.freewrite[this.isShow].hasPlay) {
-        this.$message.warning("正在播放,不能清除");
+        this.$message({
+          showClose: true,
+          message: "正在播放,不能清除",
+          type: "warning",
+          duration: 2000
+        });
         return;
       }
       this.$refs.freewrite[this.isShow].handelReset();

+ 56 - 10
src/components/Adult/phonePreview/components/WordPhraseDetail.vue

@@ -87,7 +87,14 @@
           </p>
           <div class="wordInfor">
             <div class="yinpin">
-              <span class="pinyintext"> {{ data.pinyin.toLowerCase() }}</span>
+              <span
+                class="pinyintext"
+                :style="{
+                  fontSize: baseSizePhone + 'px'
+                }"
+              >
+                {{ data.pinyin.toLowerCase() }}</span
+              >
               <template v-if="data.newWordMp3">
                 <Audio
                   :mp3="data.newWordMp3"
@@ -117,6 +124,9 @@
               v-for="(fy, i) in data.definition_list"
               :key="i"
               v-html="fy"
+              :style="{
+                fontSize: baseSizePhone - 2 + 'px'
+              }"
             ></p>
           </div>
         </div>
@@ -211,7 +221,14 @@
               </div>
               <div class="liju_main">
                 <div v-for="(item, i) in CurrentList" :key="i">
-                  <div class="number">{{ i + 1 }}.</div>
+                  <div
+                    class="number"
+                    :style="{
+                      fontSize: baseSizePhone + 2 + 'px'
+                    }"
+                  >
+                    {{ i + 1 }}.
+                  </div>
                   <div>
                     <template v-if="lijuPatternIndex == 1">
                       <el-tooltip effect="dark" placement="bottom">
@@ -234,8 +251,18 @@
                       <!-- <p class="p2" v-html="item.resArr"></p> -->
                     </template>
                     <template v-else>
-                      <p v-html="item.res"></p>
-                      <p class="p2">
+                      <p
+                        v-html="item.res"
+                        :style="{
+                          fontSize: baseSizePhone + 2 + 'px'
+                        }"
+                      ></p>
+                      <p
+                        class="p2"
+                        :style="{
+                          fontSize: baseSizePhone - 2 + 'px'
+                        }"
+                      >
                         {{ item.source_courseware_name_path }}
                       </p>
                     </template>
@@ -411,7 +438,8 @@ export default {
     "currentTreeID",
     "type",
     "bg",
-    "ed"
+    "ed",
+    "baseSizePhone"
   ],
   data() {
     //这里存放数据
@@ -447,6 +475,14 @@ export default {
       handler: function(val, oldVal) {
         const _this = this;
         if (val) {
+          let new_word = _this.data.new_word.replace(/\(.*?\)/g, "");
+          let new_word_str = "";
+          for (let i = 0; i < new_word.length; i++) {
+            if (/[\u4E00-\u9FA5\uF900-\uFA2D]/.test(new_word[i])) {
+              new_word_str += JSON.parse(JSON.stringify(new_word[i]));
+            }
+          }
+          _this.data.new_word_str = new_word_str;
           _this.initData();
           // if (_this.type == "newWordDetail") {
           //   _this.getChineseInfo();
@@ -557,7 +593,12 @@ export default {
     // 上一个单词详情
     lastDetail() {
       if (this.detailIndex == 0) {
-        this.$message.warning("当前已经是第一个");
+        this.$message({
+          showClose: true,
+          message: "当前已经是第一个",
+          type: "warning",
+          duration: 2000
+        });
         return;
       }
       this.changeDetailIndex("last");
@@ -566,7 +607,12 @@ export default {
     nextDetail() {
       let _this = this;
       if (_this.detailIndex == _this.optionRes.length - 1) {
-        this.$message.warning("当前已经是最后一个了 ");
+        this.$message({
+          showClose: true,
+          message: "当前已经是最后一个了",
+          type: "warning",
+          duration: 2000
+        });
         return;
       }
       _this.changeDetailIndex("next");
@@ -1259,19 +1305,19 @@ export default {
             > :nth-child(1) {
               text-align: right;
               margin-right: 6px;
-              line-height: 24px;
+              line-height: 1.3;
               font-family: "FZJCGFKTK";
             }
             p {
               margin: 0;
-              line-height: 24px;
+              line-height: 1.3;
               font-size: 16px;
               color: rgba(0, 0, 0, 0.85);
               font-family: "FZJCGFKTK";
             }
             .p2 {
               font-size: 12px;
-              line-height: 20px;
+              line-height: 1.5;
               color: rgba(0, 0, 0, 0.85);
               opacity: 0.3;
             }

+ 6 - 1
src/components/Adult/phonePreview/components/Wordcard.vue

@@ -310,7 +310,12 @@ export default {
           this.$message.success("收藏成功!");
         });
       } else {
-        this.$message.warning("权限不足!");
+        this.$message({
+          showClose: true,
+          message: "权限不足!",
+          type: "warning",
+          duration: 2000
+        });
       }
     },
     //取消收藏

+ 6 - 1
src/components/Adult/preview/NewWordShow.vue

@@ -366,7 +366,12 @@ export default {
   methods: {
     playHanzi(rowIndex, colIndex, item) {
       if (this.playStatus) {
-        this.$message.warning("请等待播放完成");
+        this.$message({
+          showClose: true,
+          message: "请等待播放完成",
+          type: "warning",
+          duration: 2000
+        });
         return;
       }
       this.playStatus = true;

+ 172 - 160
src/components/Adult/preview/NumberSelectHasRecord.vue

@@ -1,82 +1,95 @@
 <!--  -->
 <template>
   <div class="Big-Book-prev-Textdes" v-if="curQue">
-      <div class="left-con">
-          <ul>
-              <li v-for="(item,index) in curQue.option" :key="index" :class="[selectCon.indexOf(index)>-1?'active':'']" @click="handleClick(item,index)">
-                  {{item.con}}
-              </li>
-          </ul>
-          <a :class="['sureBtn',selectCon.length>0?'active':'']" @click="handleSure">确认</a>
-      </div>
-      <div class="right-con">
-          <ul>
-              <li v-for="(item,index) in rightList" :key="index">
-                  <span v-for="(items,indexs) in item" :key="indexs">
-                      {{items}}
-                  </span>
-                  <Soundrecord @handleWav="handleWav" type="mini" class="luyin-box" />
-              </li>
-          </ul>
-          <a :class="['clearBtn']" @click="handleClean" v-if="rightList.length>0">清空</a>
-      </div>
+    <div class="left-con">
+      <ul>
+        <li
+          v-for="(item, index) in curQue.option"
+          :key="index"
+          :class="[selectCon.indexOf(index) > -1 ? 'active' : '']"
+          @click="handleClick(item, index)"
+        >
+          {{ item.con }}
+        </li>
+      </ul>
+      <a
+        :class="['sureBtn', selectCon.length > 0 ? 'active' : '']"
+        @click="handleSure"
+        >确认</a
+      >
+    </div>
+    <div class="right-con">
+      <ul>
+        <li v-for="(item, index) in rightList" :key="index">
+          <span v-for="(items, indexs) in item" :key="indexs">
+            {{ items }}
+          </span>
+          <Soundrecord @handleWav="handleWav" type="mini" class="luyin-box" />
+        </li>
+      </ul>
+      <a :class="['clearBtn']" @click="handleClean" v-if="rightList.length > 0"
+        >清空</a
+      >
+    </div>
   </div>
 </template>
 
 <script>
 import Soundrecord from "../preview/Soundrecord.vue"; // 录音模板
 export default {
-  components: {Soundrecord},
+  components: { Soundrecord },
   props: ["curQue"],
   data() {
     return {
-        rightList: [],
-        selectConIndex: [], // 选择内容的索引
-        selectCon: [], // 选择内容
+      rightList: [],
+      selectConIndex: [], // 选择内容的索引
+      selectCon: [] // 选择内容
     };
   },
   computed: {},
   watch: {},
   //方法集合
   methods: {
-      handleWav(data) {
-        
-      },
+    handleWav(data) {},
     // 点击字
-    handleClick (word,index) {
-        if (this.selectConIndex.indexOf(index) > -1) {
-            this.selectConIndex.splice(this.selectConIndex.indexOf(index), 1)
-            this.selectCon.splice(this.selectConIndex.indexOf(index), 1)
-        } else {
-            this.selectConIndex.push(index)
-            this.selectCon.push(index)
-        }
+    handleClick(word, index) {
+      if (this.selectConIndex.indexOf(index) > -1) {
+        this.selectConIndex.splice(this.selectConIndex.indexOf(index), 1);
+        this.selectCon.splice(this.selectConIndex.indexOf(index), 1);
+      } else {
+        this.selectConIndex.push(index);
+        this.selectCon.push(index);
+      }
     },
     // 点击确定按钮
-    handleSure(){
-        let flag = false
-        this.rightList.forEach((item, index) => {
-            if (item.toString() == this.selectCon.toString()) {
-                flag = true
-                return false
-            }
-        })
-        if (flag) {
-            this.$message.warning('已选择过相同选项');
-        }else{
-            this.rightList.push(this.selectCon)
+    handleSure() {
+      let flag = false;
+      this.rightList.forEach((item, index) => {
+        if (item.toString() == this.selectCon.toString()) {
+          flag = true;
+          return false;
         }
-        this.selectConIndex = []
-        this.selectCon = []
+      });
+      if (flag) {
+        this.$message({
+          showClose: true,
+          message: "已选择过相同选项",
+          type: "warning",
+          duration: 2000
+        });
+      } else {
+        this.rightList.push(this.selectCon);
+      }
+      this.selectConIndex = [];
+      this.selectCon = [];
     },
     // 清空
-    handleClean(){
-        this.rightList = []
-    },
+    handleClean() {
+      this.rightList = [];
+    }
   },
   //生命周期 - 创建完成(可以访问当前this实例)
-  created() {
-  },
+  created() {},
   //生命周期 - 挂载完成(可以访问DOM元素)
   mounted() {},
   beforeCreate() {}, //生命周期 - 创建之前
@@ -85,118 +98,117 @@ export default {
   updated() {}, //生命周期 - 更新之后
   beforeDestroy() {}, //生命周期 - 销毁之前
   destroyed() {}, //生命周期 - 销毁完成
-  activated() {}, //如果页面有keep-alive缓存功能,这个函数会触发
+  activated() {} //如果页面有keep-alive缓存功能,这个函数会触发
 };
 </script>
-<style lang='scss' scoped>
+<style lang="scss" scoped>
 //@import url(); 引入公共css类
-.Big-Book-prev-Textdes{
-    display: flex;
-    justify-content: space-between;
-    align-items: stretch;
-   .left-con{
-       background: #FFFFFF;
-       border: 1px solid rgba(0, 0, 0, 0.1);
-       border-radius: 8px;
-       padding: 16px 25px 72px 25px;
-       position: relative;
-       width: 324px;
-       margin-right: 16px;
-       box-sizing: border-box;
-       ul{
-           display: flex;
-           flex-flow: wrap;
-           li{
-                padding: 8px;
-                min-width: 52px;
-                background: #FFFFFF;
-                border: 1px solid rgba(0, 0, 0, 0.1);
-                box-sizing: border-box;
-                border-radius: 8px;
-                font-family: 'FZJCGFKTK';
-                text-align: center;
-                font-size: 24px;
-                line-height: 150%;
-                color: #000000;
-                margin: 8px;
-                cursor: pointer;
-                &.active{
-                    background: #F7F7F7;
-                    border: 1px solid #00C84B;
-                }
-           }
-       }
-       .sureBtn{
-            position: absolute;
-            bottom: 24px;
-            right: 34px;
-            width: 64px;
-            height: 32px;
-            background: #D8D8D8;
-            border: 1px solid rgba(0, 0, 0, 0.1);
-            box-sizing: border-box;
-            border-radius: 8px;
-            color: #FFFFFF;
-            font-size: 16px;
-            display: flex;
-            justify-content: center;
-            align-items: center;
-            &.active{
-                background: #3EC65C;
-
-            }
-       }
-   }
-   .right-con{
-        background: #F8F8F8;
+.Big-Book-prev-Textdes {
+  display: flex;
+  justify-content: space-between;
+  align-items: stretch;
+  .left-con {
+    background: #ffffff;
+    border: 1px solid rgba(0, 0, 0, 0.1);
+    border-radius: 8px;
+    padding: 16px 25px 72px 25px;
+    position: relative;
+    width: 324px;
+    margin-right: 16px;
+    box-sizing: border-box;
+    ul {
+      display: flex;
+      flex-flow: wrap;
+      li {
+        padding: 8px;
+        min-width: 52px;
+        background: #ffffff;
         border: 1px solid rgba(0, 0, 0, 0.1);
         box-sizing: border-box;
         border-radius: 8px;
-        position: relative;
-        width: 440px;
-        ul{
-            display: flex;
-            flex-flow: wrap;
-            padding: 16px 15px 72px 15px;
+        font-family: "FZJCGFKTK";
+        text-align: center;
+        font-size: 24px;
+        line-height: 150%;
+        color: #000000;
+        margin: 8px;
+        cursor: pointer;
+        &.active {
+          background: #f7f7f7;
+          border: 1px solid #00c84b;
         }
-        li{
-            display: flex;
-            align-items: center;
-            background: #FFFFFF;
-            border: 1px solid rgba(0, 0, 0, 0.1);
-            box-sizing: border-box;
-            border-radius: 8px;
-            padding: 8px 7px 8px 15px;
-            margin: 8px;
-            span{
-                font-size: 24px;
-                line-height: 150%;
-                color: #000000;
-                font-family: 'FZJCGFKTK';
-            }
-            .luyin-box{
-                width: 64px;
-                height: 32px;
-                // border: 1px solid rgba(0, 0, 0, 0.1);
-                border-radius: 8px;
-                margin-left: 4px;
-            }
-        }
-        .clearBtn{
-            position: absolute;
-            bottom: 24px;
-            right: 34px;
-            width: 64px;
-            height: 32px;
-            background: #32A5D8;
-            box-sizing: border-box;
-            border-radius: 8px;
-            color: #FFFFFF;
-            font-size: 16px;
-            display: flex;
-            justify-content: center;
-            align-items: center;
-        }
-   }
+      }
+    }
+    .sureBtn {
+      position: absolute;
+      bottom: 24px;
+      right: 34px;
+      width: 64px;
+      height: 32px;
+      background: #d8d8d8;
+      border: 1px solid rgba(0, 0, 0, 0.1);
+      box-sizing: border-box;
+      border-radius: 8px;
+      color: #ffffff;
+      font-size: 16px;
+      display: flex;
+      justify-content: center;
+      align-items: center;
+      &.active {
+        background: #3ec65c;
+      }
+    }
+  }
+  .right-con {
+    background: #f8f8f8;
+    border: 1px solid rgba(0, 0, 0, 0.1);
+    box-sizing: border-box;
+    border-radius: 8px;
+    position: relative;
+    width: 440px;
+    ul {
+      display: flex;
+      flex-flow: wrap;
+      padding: 16px 15px 72px 15px;
+    }
+    li {
+      display: flex;
+      align-items: center;
+      background: #ffffff;
+      border: 1px solid rgba(0, 0, 0, 0.1);
+      box-sizing: border-box;
+      border-radius: 8px;
+      padding: 8px 7px 8px 15px;
+      margin: 8px;
+      span {
+        font-size: 24px;
+        line-height: 150%;
+        color: #000000;
+        font-family: "FZJCGFKTK";
+      }
+      .luyin-box {
+        width: 64px;
+        height: 32px;
+        // border: 1px solid rgba(0, 0, 0, 0.1);
+        border-radius: 8px;
+        margin-left: 4px;
+      }
+    }
+    .clearBtn {
+      position: absolute;
+      bottom: 24px;
+      right: 34px;
+      width: 64px;
+      height: 32px;
+      background: #32a5d8;
+      box-sizing: border-box;
+      border-radius: 8px;
+      color: #ffffff;
+      font-size: 16px;
+      display: flex;
+      justify-content: center;
+      align-items: center;
+    }
+  }
 }
-</style>
+</style>

+ 6 - 1
src/components/Adult/preview/SentenceSortQP.vue

@@ -224,7 +224,12 @@ export default {
       this.$forceUpdate();
     },
     NOremove() {
-      this.$message.warning("当前没有可清空的数据");
+      this.$message({
+        showClose: true,
+        message: "当前没有可清空的数据",
+        type: "warning",
+        duration: 2000
+      });
       return;
     },
     // 判断对错

+ 18 - 4
src/components/Adult/preview/components/Freewrite.vue

@@ -139,7 +139,12 @@ export default {
     },
     removeImage() {
       if (this.hasPlay) {
-        this.$message.warning("正在播放,不能删除");
+        this.$message({
+          showClose: true,
+          message: "正在播放,不能删除",
+          type: "warning",
+          duration: 2000
+        });
         return;
       }
       if (this.imgIndex === null) return;
@@ -156,7 +161,12 @@ export default {
     },
     play(index) {
       if (this.hasPlay) {
-        this.$message.warning("请等待播放完成");
+        this.$message({
+          showClose: true,
+          message: "请等待播放完成",
+          type: "warning",
+          duration: 2000
+        });
         return;
       }
       this.$refs.esign.reset();
@@ -244,8 +254,12 @@ export default {
         .catch(err => {
           this.saveShow = false;
 
-          console.log(err);
-          this.$message.warning("请先书写在保存");
+          this.$message({
+            showClose: true,
+            message: "请先书写再保存",
+            type: "warning",
+            duration: 2000
+          });
         });
     }
   },

+ 12 - 2
src/components/Adult/preview/components/FreewriteLettle.vue

@@ -119,7 +119,12 @@ export default {
       let _this = this;
       if (this.currenHzData.history) {
         if (this.hasPlay) {
-          this.$message.warning("请等待播放完成");
+          this.$message({
+            showClose: true,
+            message: "请等待播放完成",
+            type: "warning",
+            duration: 2000
+          });
           return;
         }
         this.$refs.esign.reset();
@@ -273,7 +278,12 @@ export default {
           // this.textOcr(res.replace("data:image/png;base64,", ""));
         })
         .catch(err => {
-          this.$message.warning("请先书写在保存");
+          this.$message({
+            showClose: true,
+            message: "请先书写再保存",
+            type: "warning",
+            duration: 2000
+          });
         });
     }
   },

+ 12 - 2
src/components/Adult/preview/components/Practice.vue

@@ -304,7 +304,12 @@ export default {
           this.$message.success("收藏成功!");
         });
       } else {
-        this.$message.warning("权限不足!");
+        this.$message({
+          showClose: true,
+          message: "权限不足!",
+          type: "warning",
+          duration: 2000
+        });
       }
     },
     //取消收藏
@@ -363,7 +368,12 @@ export default {
     },
     resetHuahua() {
       if (this.$refs.freewrite[this.isShow].hasPlay) {
-        this.$message.warning("正在播放,不能清除");
+        this.$message({
+          showClose: true,
+          message: "正在播放,不能清除",
+          type: "warning",
+          duration: 2000
+        });
         return;
       }
       this.$refs.freewrite[this.isShow].handelReset();

+ 20 - 2
src/components/Adult/preview/components/WordPhraseDetail.vue

@@ -451,6 +451,14 @@ export default {
       handler: function(val, oldVal) {
         const _this = this;
         if (val) {
+          let new_word = _this.data.new_word.replace(/\(.*?\)/g, "");
+          let new_word_str = "";
+          for (let i = 0; i < new_word.length; i++) {
+            if (/[\u4E00-\u9FA5\uF900-\uFA2D]/.test(new_word[i])) {
+              new_word_str += JSON.parse(JSON.stringify(new_word[i]));
+            }
+          }
+          _this.data.new_word_str = new_word_str;
           _this.initData();
           // if (_this.type == "newWordDetail") {
           //   _this.getChineseInfo();
@@ -561,7 +569,12 @@ export default {
     // 上一个单词详情
     lastDetail() {
       if (this.detailIndex == 0) {
-        this.$message.warning("当前已经是第一个");
+        this.$message({
+          showClose: true,
+          message: "当前已经是第一个",
+          type: "warning",
+          duration: 2000
+        });
         return;
       }
       this.changeDetailIndex("last");
@@ -570,7 +583,12 @@ export default {
     nextDetail() {
       let _this = this;
       if (_this.detailIndex == _this.optionRes.length - 1) {
-        this.$message.warning("当前已经是最后一个了 ");
+        this.$message({
+          showClose: true,
+          message: "当前已经是最后一个了",
+          type: "warning",
+          duration: 2000
+        });
         return;
       }
       _this.changeDetailIndex("next");

+ 6 - 1
src/components/Adult/preview/components/Wordcard.vue

@@ -309,7 +309,12 @@ export default {
           this.$message.success("收藏成功!");
         });
       } else {
-        this.$message.warning("权限不足!");
+        this.$message({
+          showClose: true,
+          message: "权限不足!",
+          type: "warning",
+          duration: 2000
+        });
       }
     },
     //取消收藏

+ 2 - 1
src/components/TreeView.vue

@@ -293,7 +293,7 @@ export default {
   height: 100%;
   align-items: center;
   line-height: 44px;
-  padding-right: 60px;
+  padding-right: 30px;
   overflow: hidden;
   white-space: nowrap;
   text-overflow: ellipsis;
@@ -349,6 +349,7 @@ export default {
     color: #2c2c2c;
     height: 100%;
     display: block !important;
+    width: 100%;
   }
   .el-tree--highlight-current
     .el-tree-node.is-current

+ 17 - 3
src/views/courseView.vue

@@ -12,7 +12,7 @@
         :style="{ background: isPhone && showMenu ? themeColorPhone : '' }"
       >
         <template v-if="isPhone">
-          <div style="text-align: right;color: black;padding: 10px;">
+          <div class="toggle-box" :class="[showMenu ? 'toggle-box-fold' : '']">
             <i
               @click="toggleMenu"
               :class="[showMenu ? 'el-icon-s-fold' : 'el-icon-s-unfold']"
@@ -25,6 +25,7 @@
           :change-id="changeId"
           :change-tree-data="changeTreeData"
           :current-tree-i-d="chapterId"
+          v-show="(isPhone && showMenu) || !isPhone"
         />
       </div>
 
@@ -373,13 +374,13 @@ export default {
       position: fixed;
       top: 0px;
       left: 0;
-      transform: translate(0, 0);
+      // transform: translate(0, 0);   // 会使子元素fixed失效
       padding-top: 64px;
       z-index: 2;
       background: #fff;
       &-phone {
         width: 50%;
-        padding-top: 20px;
+        padding-top: 50px;
         z-index: 4;
       }
       &-unfold {
@@ -572,6 +573,19 @@ export default {
   height: 700px;
   margin: 0 auto;
 }
+.toggle-box {
+  position: fixed;
+  top: 15px;
+  left: 0;
+  z-index: 1;
+  text-align: right;
+  color: black;
+  padding: 10px;
+  width: 40px;
+  &-fold {
+    width: 50%;
+  }
+}
 </style>
 <style lang="scss">
 .title-box {