user1
2024-06-13 0653ed7b36a147f3cfd6eade1b54e5604b8133f1
drama部署
24个文件已修改
1个文件已添加
31 文件已重命名
1437 ■■■■■ 已修改文件
.env 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.env.product 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
package.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/App.vue 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/artAndDrama/assets/main.less 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/childHealth/assets/main.less 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/childHealth/view/content/components/chapter007.vue 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/childHealth/view/content/components/header.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/childHealth/view/content/index.vue 93 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/lifeCare/css/default.less 188 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/lifeCare/image/zt-pen.png 补丁 | 查看 | 原始文档 | blame | 历史
src/books/lifeCare/image/zt.-penpng.png 补丁 | 查看 | 原始文档 | blame | 历史
src/books/lifeCare/image/zt.png 补丁 | 查看 | 原始文档 | blame | 历史
src/books/lifeCare/view/components/chapter001.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/lifeCare/view/components/chapter010.vue 82 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/lifeCare/view/components/chapter011.vue 139 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/lifeCare/view/components/chapter012.vue 202 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/lifeCare/view/components/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/0100-1.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/0100-2.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/0100-3.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/0101-1.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/0101-2.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/0102-1.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/0102-2.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/0103-1.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/0103-2.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/Cover.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/Covers.png 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/cxgk.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/dy1.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/dy3.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/hzjl.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/icon/heart-check.png 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/icon/heart.png 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/question/0103-1-1.png 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/question/0103-1-2.png 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/question/0103-1-3.png 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/question/0103-1-4.png 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/stlx.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/tbts.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/tjfx.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/wttc.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/images/xxmb.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/assets/main.less 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/view/components/chapter001.vue 138 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/view/components/header.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/view/components/index.vue 补丁 | 查看 | 原始文档 | blame | 历史
src/books/mathBook/view/index.vue 补丁 | 查看 | 原始文档 | blame | 历史
src/books/sportsAndHealth/css/default.less 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/sportsAndHealth/view/components/index.vue 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/sportsAndHealth/view/components/testDynaicTable.vue 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/books/sportsAndHealth/view/components/testPp.vue 106 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/examinations/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/pdfview/index.vue 220 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
vue.config.js 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.env
@@ -1,3 +1,4 @@
VUE_APP_ENV = 'dev'
VUE_APP_API_URL = "https://jsek.bnuic.com"
PUBLIC_PATH = '/books/book'
VUE_APP_RESOURCE_CTX = 'https://jsek.bnuic.com/books/resource/'
VUE_APP_PUBLIC_PATH = '/books/book'
.env.product
@@ -1,4 +1,6 @@
VUE_APP_ENV = 'product'
VUE_APP_API_URL = "https://jsek.bnuic.com"
PUBLIC_PATH = 'http://182.92.203.7:3007/books/book'
# PUBLIC_PATH = 'https://jsek.bnuic.com/books/book'
VUE_APP_RESOURCE_CTX = 'https://jsek.bnuic.com/books/resource/'
VUE_APP_PUBLIC_PATH = 'https://jsek.bnuic.com/books/book/childHealth'
VUE_APP_BOOK_LIST = "childHealth/lifeCare/sportsAndHealth/embedded/english/artAndDance/artAndDrama/mathBook"
VUE_APP_BOOK_ID = 'childHealth'
package.json
@@ -32,7 +32,8 @@
    "eslint-plugin-vue": "^8.0.3",
    "less": "^4.2.0",
    "less-loader": "^12.2.0",
    "vue-template-compiler": "^2.6.14"
    "vue-template-compiler": "^2.6.14",
    "webpack": "^5.92.0"
  },
  "eslintConfig": {
    "root": true,
src/App.vue
@@ -9,30 +9,22 @@
    ></sportsAndHealth>
    <artAndDance v-if="activeBook.name == 'artAndDance'"></artAndDance>
    <artAndDrama v-if="activeBook.name == 'artAndDrama'"></artAndDrama>
    <mathBook v-if="activeBook.name == 'math'"></mathBook>
    <mathBook v-if="activeBook.name == 'mathBook'"></mathBook>
  </div>
</template>
<script>
import childHealth from "./books/childHealth/view/index.vue";
import lifeCare from "./books/lifeCare/view/index.vue";
import embedded from "./books/embedded/view/index.vue";
import english from "./books/English/view/index.vue";
import sportsAndHealth from "./books/sportsAndHealth/view/index";
import artAndDance from './books/artAndDance/view/index.vue'
import mathBook from './books/math/view/index.vue'
import artAndDrama from './books/artAndDrama/view/index.vue'
export default {
  name: "App",
  components: {
    childHealth,
    lifeCare,
    embedded,
    english,
    sportsAndHealth,
    artAndDance,
    mathBook,
    artAndDrama
    childHealth: () => import("./books/childHealth/view/index.vue"),
    lifeCare: () => import("./books/lifeCare/view/index.vue"),
    embedded: () => import("./books/embedded/view/index.vue"),
    english: () => import("./books/english/view/index.vue"),
    sportsAndHealth: () => import("./books/sportsAndHealth/view/index.vue"),
    artAndDance: () => import("./books/artAndDance/view/index.vue"),
    mathBook: () => import("./books/mathBook/view/index.vue"),
    artAndDrama: () => import("./books/artAndDrama/view/index.vue")
  },
  data() {
    return {
@@ -43,20 +35,11 @@
    if (this.setGlobalState) {
      this.setGlobalState({
        initTestBook: async (bookId, tryPageCount) => {
          // this.activeBook = await this.config.getBookConfig(this.config.resourceCtx + bookId);
          if (
            // "http://182.92.203.7:3007/books/resource/"
            // "https://jsek.bnuic.com/books/resource/"
            this.config.resourceCtx ==
            "http://182.92.203.7:3007/books/resource/"
          ) {
            this.config.resourceCtx = this.config.resourceCtx + bookId;
          }
          this.activeBook = await this.config.getBookConfig(
            process.env.VUE_APP_RESOURCE_CTX + process.env.VUE_APP_BOOK_ID
          );
          this.config.activeBook = this.activeBook;
          this.config.goodsStore = this.activeBook.storeRefcode;
          this.activeBook = await this.config.getBookConfig(
            this.config.resourceCtx
          );
          if (tryPageCount) {
            this.activeBook.tryPageCount = tryPageCount;
          }
@@ -70,16 +53,19 @@
        }
      });
    } else {
      // childHealth
      // lifeCare
      // sportsAndHealth
      // embedded
      // english
      // artAndDance
      // artAndDrama
      // mathBook
      this.activeBook = await this.config.getBookConfig(
        // childHealth
        // lifeCare
        // sportsAndHealth
        // embedded
        // english
        // artAndDance
        // artAndDrama
        // math
        this.config.resourceCtx + "artAndDrama"
        process.env.VUE_APP_RESOURCE_CTX +
          (process.env.VUE_APP_ENV == "product"
            ? process.env.VUE_APP_BOOK_ID
            : "childHealth")
      );
      // 测试试读30页
      // this.activeBook.tryPageCount = 10;
@@ -181,8 +167,7 @@
  margin: auto;
}
.openImgBox img{
.openImgBox img {
  cursor: zoom-in;
}
</style>
src/books/artAndDrama/assets/main.less
@@ -510,6 +510,7 @@
      outline: none;
    }
  }
<<<<<<< HEAD
  .page-footer {
    position: relative;
    display: flex;
@@ -592,12 +593,17 @@
}
/* 媒体查询做基础响应式布局 */
@media (max-width: 430px) {
=======
}
  /* 媒体查询做基础响应式布局 */
  @media (max-width: 430px) {
>>>>>>> ba76798a669c6d859d0f8b9a913e7637d3e8d7e2
    .ans-drama  {
      .page-box {
        min-height: 750px;
      }
      .pg-mh {
        min-height: 815px;
        min-height: 815px !important;
      }
    }
  }
src/books/childHealth/assets/main.less
@@ -454,7 +454,7 @@
  }
  .page-box {
    box-sizing: border-box;
    min-height: 1150px ;
    min-height: 1150px;
    margin-bottom: 20px;
    box-shadow: 0 3px 6px 1px #00000029;
    background-color: #fff;
@@ -658,6 +658,10 @@
    .video-box {
      max-width: 260px;
    }
    .page-box{
      min-height: 500px;
    }
  }
}
@media (min-width: 660px) {
src/books/childHealth/view/content/components/chapter007.vue
@@ -385,41 +385,6 @@
            </p>
            <p class="block">常见于胃肠道疾病。</p>
            <p class="block">2.大便性状异常</p>
            <p class="block">(2)维生素A或维生素D中毒,也会引起厌食。</p>
            <p class="block">(3)长期摄食无盐饮食,也可使食欲低下。</p>
            <p class="block">2.食欲亢进</p>
            <p class="block">
              (1)幼儿若吃得多、喝得多、尿得多,应检查是否患有甲状腺功能亢进或糖尿病。
            </p>
            <p class="block">(2)心理异常也可贪食。</p>
            <p class="block">(3)家族遗传性肥胖患儿也有贪食习惯。</p>
            <p class="block">3.异嗜癖</p>
            <p class="block">
              异嗜癖是指幼儿对食物以外的非食物物品表现出不可自制的食欲,如喜食泥土、煤核、纸张、墙皮等。常见于体内锌、铁严重缺乏的幼儿,在中国南方也可见于钩虫病。
            </p>
            <p class="block"><b>三、睡眠异常</b></p>
            <p class="block">
              正常幼儿上床后可很快入睡,睡眠平稳、无鼾声,可有微汗。
            </p>
            <p class="block">睡眠异常主要包括以下3种。</p>
            <p class="block">1.入睡困难</p>
            <p class="block">(1)进入新的环境,不能适应。</p>
            <p class="block">(2)精神紧张、压力过大。</p>
            <p class="block">(3)疾病疼痛所致,如剧烈牙疼可致入睡困难。</p>
            <p class="block">2.睡眠不安</p>
            <p class="block">(1)佝偻病等所致。</p>
            <p class="block">(2)体内有蛲虫活动。</p>
            <p class="block">(3)心理因素。</p>
            <p class="block">3.嗜睡</p>
            <p class="block">常见于脑膜炎、脑炎等疾病的早期表现。</p>
            <p class="block"><b>四、大便异常</b></p>
            <p class="block">包括大便次数异常和大便性状异常。</p>
            <p class="block">1.大便次数异常</p>
            <p class="block">
              排便次数较平时有明显减少或增多,排便时有不舒服感。
            </p>
            <p class="block">常见于胃肠道疾病。</p>
            <p class="block">2.大便性状异常</p>
            <p class="block">
              (1)血便:粪便带血,色鲜红、暗红或呈柏油状,量多少不等,可混有脓液、黏液,统称便血或血便。
            </p>
src/books/childHealth/view/content/components/header.vue
@@ -1,12 +1,12 @@
<template>
  <div class="chapter" num="1">
    <!-- 封面 -->
    <div class="page-box cover mt-20" page="1" style="min-height:auto">
    <div class="page-box cover mt-20" page="1">
      <div v-if="showPageList.indexOf(1) > -1">
        <img src="../../../assets/images/Covers.jpg" alt="" />
      </div>
    </div>
    <div class="page-box cover" page="2" style="min-height:auto">
    <div class="page-box cover" page="2">
      <div v-if="showPageList.indexOf(2) > -1">
        <img src="../../../assets/images/Cover.jpg" alt="" />
      </div>
src/books/childHealth/view/content/index.vue
@@ -8,7 +8,7 @@
      :style="{
        fontSize: fontSize ? fontSize + 'px' : '16px',
        transform: `scale(${pageZoom ? pageZoom : 1})`,
        transformOrigin: 'center top',
        transformOrigin: 'center top'
      }"
    >
      <pageHeader
@@ -122,7 +122,7 @@
      loadPageList: [],
      questionDataMap: {},
      renderSignMap: {},
      highlightData: null,
      highlightData: null
    };
  },
  computed: {
@@ -131,7 +131,7 @@
    },
    pageZoom() {
      return this.$store.state.qiankun.scale / 100;
    },
    }
  },
  watch: {
    showCatalogList: {
@@ -142,7 +142,7 @@
        ) {
          // 调用父层方法
          this.$store.state.qiankun.catalogChange({
            showCatalogList: newVal,
            showCatalogList: newVal
          });
        }
        // 启动页码观察
@@ -150,7 +150,7 @@
          this.initObservation();
          this.initThemeColor();
        }, 500);
      },
      }
    },
    loadPageList: {
      handler(newVal, oldVal) {
@@ -158,7 +158,7 @@
          this.initSwiper();
          this.initViewer();
        }, 200);
      },
      }
    },
    pageZoom: {
      handler(newVal, oldVal) {
@@ -166,8 +166,8 @@
          this.container ? this.container : document
        ).querySelector(".page-main");
        scrollBox.scrollTop = (scrollBox.scrollTop / oldVal) * newVal;
      },
    },
      }
    }
  },
  mounted() {
    // 默认加载章节
@@ -202,7 +202,7 @@
        // 跳转检索结果位置
        jumpSearchItem: (data) => {
          this.searchItemLocation(data);
        },
        }
      });
    }
@@ -211,13 +211,13 @@
    this.observer = new IntersectionObserver(this.pageChangeCallback, {
      root: null, // 指定根元素,这里设为 null,表示选取整个视窗作为根元素。
      rootMargin: "0px", // 指定根元素的边界,这里设为 "0px",表示根元素的边界和视窗的边界重合
      threshold: 0.5, // 指定交叉比例,这里设为 0.5,表示当目标元素一半或更多显示在视窗中时触发回调函数。
      threshold: 0.5 // 指定交叉比例,这里设为 0.5,表示当目标元素一半或更多显示在视窗中时触发回调函数。
    });
    this.loadPageObserver = new IntersectionObserver(this.loadPageCallback, {
      root: null, // 指定根元素,这里设为 null,表示选取整个视窗作为根元素。
      rootMargin: "0px", // 指定根元素的边界,这里设为 "0px",表示根元素的边界和视窗的边界重合
      threshold: 0, // 指定交叉比例,这里设为 0.5,表示当目标元素一半或更多显示在视窗中时触发回调函数。
      threshold: 0 // 指定交叉比例,这里设为 0.5,表示当目标元素一半或更多显示在视窗中时触发回调函数。
    });
    // 启动页码观察
@@ -228,7 +228,7 @@
    // 测试页面跳转
    // setTimeout(() => {
    //   this.gotoPage(1, 10);
    // this.gotoPage(1,10);
    //   setTimeout(() => {
    //     this.renderSign("Highlight", {
    //       id: "2ACA9359",
@@ -256,7 +256,7 @@
    //   txt: " 运动系统是由骨、骨连结和骨骼肌三部分组成的。全身的骨通过骨连结组成人体骨骼(见图1-1)。骨骼是人体的支架,具有保护内脏器官、供肌肉附着和作为肌肉运动的杠杆等作用。在神经系统的支配下,肌肉收缩牵动所附着的骨绕着关节转动,使身体产生各种动作。所以,运动系统具有运动、支持和保护等功能,幼年时期的骨骼还具有造血功能。 ",
    //   txtIndex: 57
    // });
    // }, 5000);
    // }, 500);
  },
  methods: {
    // setZoom1() {
@@ -328,7 +328,7 @@
          this.showCatalogList = [
            this.catalogLength - 2,
            this.catalogLength - 1,
            this.catalogLength,
            this.catalogLength
          ];
        } else {
          this.showCatalogList = [catalog - 1, catalog, catalog + 1];
@@ -378,7 +378,10 @@
          this.container ? this.container : document
        ).querySelector(`[page="${data.page}"]`);
        // 创建 createTreeWalker 迭代器,用于遍历文本节点,保存到一个数组
        const treeWalker = document.createTreeWalker(pageDom, NodeFilter.SHOW_TEXT);
        const treeWalker = document.createTreeWalker(
          pageDom,
          NodeFilter.SHOW_TEXT
        );
        const allTextNodes = [];
        let currentNode = treeWalker.nextNode();
        while (currentNode) {
@@ -584,7 +587,7 @@
            this.$store.state.qiankun.pageChange({
              page: page,
              catalog: catalog,
              text,
              text
            });
          // const sections = Array.from(document.querySelectorAll(".section"));
          //sections:获取所有具有 .section 类名的元素,并转换为数组。
@@ -610,19 +613,19 @@
              if (testData && testData[catalog]) {
                if (testData[catalog][page]) {
                  if (Array.isArray(testData[catalog][page])) {
                      this.questionDataMap[page] = await getQuestionList(
                        page,
                        testData[catalog][page],
                        this.config.activeBook
                      );
                    this.questionDataMap[page] = await getQuestionList(
                      page,
                      testData[catalog][page],
                      this.config.activeBook
                    );
                  } else {
                    const obj = {};
                    for (let key in testData[catalog][page]) {
                          obj[key] = await getQuestionList(
                          [],
                          testData[catalog][page][key],
                          this.config.activeBook
                        );
                      obj[key] = await getQuestionList(
                        [],
                        testData[catalog][page][key],
                        this.config.activeBook
                      );
                    }
                    this.questionDataMap[page] = obj;
                  }
@@ -642,7 +645,10 @@
              // 高亮行
              setTimeout(() => {
                // 获取页面所有text节点
                const pageTextList = document.createTreeWalker(target, NodeFilter.SHOW_TEXT);
                const pageTextList = document.createTreeWalker(
                  target,
                  NodeFilter.SHOW_TEXT
                );
                // 匹配关键字
                const allPageTextNodes = [];
                let currentNode = pageTextList.nextNode();
@@ -686,7 +692,7 @@
          autoplay: {
            //自动开始
            delay: 3000, //时间间隔
            disableOnInteraction: false, //*手动操作轮播图后不会暂停*
            disableOnInteraction: false //*手动操作轮播图后不会暂停*
          },
          paginationClickable: true,
          slidesPerView: 1, // 一组三个
@@ -698,11 +704,11 @@
            ),
            prevEl: (this.container ? this.container : document).querySelector(
              ".swiper-button-prev"
            ),
            )
          },
          // 窗口变化,重新init,针对F11全屏和放大缩小,必须加
          observer: true,
          observeParents: true,
          observeParents: true
          // // 如果需要分页器
          // pagination: {
          //   el: (this.container ? this.container : document).querySelector(
@@ -730,7 +736,7 @@
            ),
            prevEl: (this.container ? this.container : document).querySelector(
              ".swiper-button-prev"
            ),
            )
          },
          // 窗口变化,重新init,针对F11全屏和放大缩小,必须加
          observer: true,
@@ -749,8 +755,8 @@
              var paginationInfoEl = dom.querySelector(".pageBox");
              if (paginationInfoEl)
                paginationInfoEl.textContent = currentPage + "/" + totalPages;
            },
          },
            }
          }
        });
      }
    },
@@ -766,7 +772,7 @@
            : "body",
          navbar: true, // 显示导航栏
          toolbar: true, // 显示工具栏
          title: true, // 显示标题
          title: true // 显示标题
        });
      }
    },
@@ -789,7 +795,7 @@
        chapterTen,
        chapterEleven,
        chapterTwelve,
        chapterThirteen,
        chapterThirteen
      };
      // 遍历所有章节文件
      for (const key in pageData) {
@@ -802,7 +808,7 @@
            showPageList: [],
            questionData: {},
            isSearch: true
          },
          }
        });
        pageExample.$mount(
          (this.container ? this.container : document).querySelector(
@@ -834,7 +840,7 @@
                showPageList: [pageNum],
                questionData: {},
                isSearch: true
              },
              }
            });
            pageExample.$mount(
              (this.container ? this.container : document).querySelector(
@@ -847,7 +853,10 @@
              .querySelector(`[page="${pageNum}"]`);
            if (thisPageDom) {
              // 获取页面所有text节点
              const pageTextList = document.createTreeWalker(thisPageDom, NodeFilter.SHOW_TEXT);
              const pageTextList = document.createTreeWalker(
                thisPageDom,
                NodeFilter.SHOW_TEXT
              );
              // 匹配关键字
              const allPageTextNodes = [];
              let currentNode = pageTextList.nextNode();
@@ -864,7 +873,7 @@
                    page: pageNum,
                    catalog: catalogIndex,
                    txt: textDom.textContent,
                    txtIndex: txtIndex,
                    txtIndex: txtIndex
                  });
                }
              }
@@ -887,7 +896,7 @@
      this.highlightData = data;
      // 跳转
      this.gotoPage(data.catalog, data.page, () => {});
    },
    }
  },
  components: {
    pageHeader,
@@ -903,8 +912,8 @@
    chapterTen,
    chapterEleven,
    chapterTwelve,
    chapterThirteen,
  },
    chapterThirteen
  }
};
</script>
src/books/lifeCare/css/default.less
@@ -256,6 +256,34 @@
      .chapter {
        font-family: "宋体";
        .rightPng{
          float: left;
        }
        .bk1-h3 {
          border: 2px solid #a5c24f;
          color: #a5c24f;
          font-weight: normal;
          height: 35px;
          border-top-right-radius: 25px;
          border-bottom-right-radius: 25px;
          display: inline-flex;
          justify-content: space-between;
          align-items: center;
          span {
            color: #fff;
            display: inline-block;
            width: 50px;
            height: 100%;
            line-height: 35px;
            text-align: center;
            box-sizing: border-box;
            background-color: #a5c24f;
          }
        }
        .topImg {
          padding-top: 0 !important;
          margin-bottom: 2em;
@@ -299,6 +327,10 @@
                margin: 0 20px;
              }
              .ztStr {
                margin: 0 50px;
              }
              .title {
                display: flex;
                justify-content: flex-start;
@@ -319,13 +351,51 @@
              }
            }
            .zt1-content {
              background-color: #f7b80a;
            .zt01-con {
              background-color: #fbb45e;
            }
            .zt1-header-bj {
              border-left-color: #a5c24f;
              border-bottom-color: #a5c24f;
            .zt02-con {
              background-color: #b786bb;
            }
            .zt03-con {
              background-color: #a5c24f;
            }
            .zt04-con {
              background-color: #b786bb;
            }
            .zt05-con {
              background-color: #b786bb;
            }
            .zt01-bj {
              border-left: 2px solid #a5c24f;
              border-bottom: 2px solid #a5c24f;
            }
            .zt02-bj {
              border-left: 2px solid #6eb1e1;
              border-bottom: 2px solid #6eb1e1;
            }
            .zt03-bj {
              border-left: 2px solid #a97b50;
              border-bottom: 2px solid #a97b50;
            }
            .zt04-bj {
              border-left: 2px solid #6eb1e1;
              border-bottom: 2px solid #6eb1e1;
            }
            .zt05-bj {
              border-left: 2px solid #6eb1e1;
              border-bottom: 2px solid #6eb1e1;
            }
            @media (max-width: 756px) {
@@ -343,6 +413,7 @@
            }
          }
          // 奇数
          .pageHeader-second {
            width: 100%;
            display: flex;
@@ -360,12 +431,32 @@
              font-size: 20px;
              position: absolute;
              right: 36px;
              top: 80px;
              top: 85px;
              .second-left {
                width: 23px;
                height: 100%;
                background-color: #f49a4c;
              }
              .zt02-left {
                width: 20px;
                background-color: #b786bb;
              }
              .zt03-left {
                width: 20px;
                background-color: #a5c24f;
              }
              .zt04-left {
                width: 20px;
                background-color: #b786bb;
              }
              .zt05-left {
                width: 20px;
                background-color: #b786bb;
              }
              .second-right {
@@ -382,9 +473,37 @@
                  top: -20px;
                }
                .zt-pen {
                  height: 40px;
                  position: absolute;
                  left: -50px;
                  top: -10px;
                }
                .pageStr {
                  margin-right: 10px;
                }
                .zt01-Str {
                  color: #a5c24f;
                }
                .zt02-Str {
                  color: #6eb1e1;
                }
                .zt03-Str {
                  color: #a97b50;
                }
                .zt04-Str {
                  color: #6eb1e1;
                }
                .zt05-Str {
                  color: #6eb1e1;
                }
                .pageNum {
                  display: block;
@@ -395,13 +514,36 @@
                  color: #fff;
                }
                .zt1-pageNum {
                .zt01-pageNum {
                  padding: 0 35px 0 20px;
                  text-align: left;
                  background-color: #a5c24f;
                }
                .zt1-pageStr {
                  color: #a5c24f;
                .zt02-pageNum {
                  padding: 0 35px 0 20px;
                  text-align: left;
                  background-color: #6eb1e1;
                }
                .zt03-pageNum {
                  padding: 0 35px 0 20px;
                  text-align: left;
                  background-color: #a97b50;
                }
                .zt04-pageNum {
                  padding: 0 35px 0 20px;
                  text-align: left;
                  background-color: #6eb1e1;
                }
                .zt05-pageNum {
                  padding: 0 35px 0 20px;
                  text-align: left;
                  background-color: #6eb1e1;
                }
              }
            }
@@ -429,8 +571,34 @@
              margin-top: 105px;
            }
            .zt1-boderLine {
            .zt01-bdline {
              background-color: #a5c24f;
              width: 88%;
              margin-right: 20px;
            }
            .zt02-bdline {
              background-color: #6eb1e1;
              width: 88%;
              margin-right: 20px;
            }
            .zt03-bdline {
              background-color: #a97b50;
              width: 88%;
              margin-right: 20px;
            }
            .zt04-bdline {
              background-color: #6eb1e1;
              width: 88%;
              margin-right: 20px;
            }
            .zt05-bdline {
              background-color: #6eb1e1;
              width: 88%;
              margin-right: 20px;
            }
          }
        }
src/books/lifeCare/image/zt-pen.png

src/books/lifeCare/image/zt.-penpng.png
src/books/lifeCare/image/zt.png

src/books/lifeCare/view/components/chapter001.vue
@@ -1386,7 +1386,7 @@
        </div>
        <div class="bodystyle">
          <p>走访的托育园一日生活保育要求及具体内容见表1-1-3。</p>
          <p class="img">表1-1-3 ______托育园一日生活保育要求及具体内容</p>
          <p class="img">表1-1-3<input type="text" maxlength="6" v-model="chapter001.text113Item" class="tk-line"/>托育园一日生活保育要求及具体内容</p>
          <div style="margin-bottom: 40px">
            <table class="table112 table113">
              <thead>
src/books/lifeCare/view/components/chapter010.vue
@@ -81,12 +81,12 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-2</div>
            <div class="header-bj zt01-bj"></div>
            <div class="content zt01-con">
              <div class="pageStr ztStr">2-2</div>
              <div class="title">
                <!-- <img class="ztImg" src="../../image/zt.png" alt="" /> -->
                <img src="../../image/chapter.png" alt="" />
                <img class="ztImg" src="../../image/zt.png" alt="" />
                <!-- <img src="../../image/zt.png" alt="" /> -->
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -212,12 +212,12 @@
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题一·初识婴幼儿生活保育</span>
                <span class="pageNum">2-3</span>
                <img class="zt-pen" src="../../image/zt-pen.png" alt="" />
                <span class="pageStr zt01-Str">专题一·初识婴幼儿生活保育</span>
                <span class="pageNum zt01-pageNum">2-3</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt01-bdline"></div>
          </div>
        </div>
        <div class="bodystyle">
@@ -325,11 +325,11 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-4</div>
            <div class="header-bj zt01-bj"></div>
            <div class="content zt01-con">
              <div class="pageStr ztStr">2-4</div>
              <div class="title">
                <img src="../../image/chapter.png" alt="" />
                <img class="ztImg" src="../../image/zt.png" alt="" />
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -372,12 +372,12 @@
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题一·初识婴幼儿生活保育</span>
                <span class="pageNum">2-5</span>
                <img class="zt-pen" src="../../image/zt-pen.png" alt="" />
                <span class="pageStr zt01-Str">专题一·初识婴幼儿生活保育</span>
                <span class="pageNum zt01-pageNum">2-5</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt01-bdline"></div>
          </div>
        </div>
        <div class="bodystyle">
@@ -420,11 +420,11 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-6</div>
            <div class="header-bj zt01-bj"></div>
            <div class="content zt01-con">
              <div class="pageStr ztStr">2-6</div>
              <div class="title">
                <img src="../../image/chapter.png" alt="" />
                <img class="ztImg" src="../../image/zt.png" alt="" />
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -451,12 +451,12 @@
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题一·初识婴幼儿生活保育</span>
                <span class="pageNum">2-7</span>
                <img class="zt-pen" src="../../image/zt-pen.png" alt="" />
                <span class="pageStr zt01-Str">专题一·初识婴幼儿生活保育</span>
                <span class="pageNum zt01-pageNum">2-7</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt01-bdline"></div>
          </div>
        </div>
@@ -508,11 +508,11 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-8</div>
            <div class="header-bj zt01-bj"></div>
            <div class="content zt01-con">
              <div class="pageStr ztStr">2-8</div>
              <div class="title">
                <img src="../../image/chapter.png" alt="" />
                <img class="ztImg" src="../../image/zt.png" alt="" />
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -554,12 +554,12 @@
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题一·初识婴幼儿生活保育</span>
                <span class="pageNum">2-9</span>
                <img class="zt-pen" src="../../image/zt-pen.png" alt="" />
                <span class="pageStr zt01-Str">专题一·初识婴幼儿生活保育</span>
                <span class="pageNum zt01-pageNum">2-9</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt01-bdline"></div>
          </div>
        </div>
        <div class="bodystyle">
@@ -581,11 +581,11 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-10</div>
            <div class="header-bj zt01-bj"></div>
            <div class="content zt01-con">
              <div class="pageStr ztStr">2-10</div>
              <div class="title">
                <img src="../../image/chapter.png" alt="" />
                <img class="ztImg" src="../../image/zt.png" alt="" />
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -608,12 +608,12 @@
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题一·初识婴幼儿生活保育</span>
                <span class="pageNum">2-11</span>
                <img class="zt-pen" src="../../image/zt-pen.png" alt="" />
                <span class="pageStr zt01-Str">专题一·初识婴幼儿生活保育</span>
                <span class="pageNum zt01-pageNum">2-11</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt01-bdline"></div>
          </div>
        </div>
        <div class="bodystyle">
src/books/lifeCare/view/components/chapter011.vue
@@ -3,7 +3,9 @@
    <div class="page-box" page="163">
      <div v-if="showPageList.indexOf(163) > -1">
        <div class="bodystyle topImg">
          <h2 id="b010"><img class="img-0" alt="" src="../../image/zt2.jpg" /></h2>
          <h2 id="b010">
            <img class="img-0" alt="" src="../../image/zt2.jpg" />
          </h2>
          <div class="bk">
            <div class="bj1">
              <p class="left">
@@ -36,7 +38,8 @@
              能安抚来园婴幼儿的不良情绪。
            </p>
            <p class="block">
              <img class="inline" alt="" src="../../image/0001-5.jpg" /> 会晨间检查。
              <img class="inline" alt="" src="../../image/0001-5.jpg" />
              会晨间检查。
            </p>
            <p class="block">
              <img class="inline" alt="" src="../../image/0001-5.jpg" />
@@ -68,20 +71,22 @@
        <div class="header">
          <div class="pageHeader-second">
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-left zt02-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题二·来园活动护照</span>
                <span class="pageNum">2-13</span>
                <img src="../../image/zt-pen.png" class="zt-pen" alt="" />
                <span class="pageStr zt02-Str">专题二·来园活动护照</span>
                <span class="pageNum zt02-pageNum">2-13</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt02-bdline"></div>
          </div>
        </div>
        <div class="bodystyle">
          <h3 id="c038">
            <span class="bk1-h3"><span class="bj2-h3">一</span>  来园保育的保教价值 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">一</span>  来园保育的保教价值 </span
            >
          </h3>
          <p>
            托育机构保育是婴幼儿照护服务的重要组成部分,是生命全周期服务管理的重要内容。托育机构应创设适宜的环境,合理安排一日生活和活动,提供生活照料、安全看护、平衡膳食和早期学习机会,从而促进婴幼儿身体和心理的全面发展。
@@ -90,7 +95,9 @@
            来园环节是婴幼儿在托育机构一日生活保育中的第一个环节。安全、卫生、温馨、舒适的环境对婴幼儿来说是一天愉快生活的基础。保教人员上岗前的个人准备、室内外环境的清洁整理、设施设备的检查、生活物品的准备、教玩具的提供及摆放等,都是来园环节的重要组成部分。来园环节还是建立师生感情、培养婴幼儿的习惯、提高婴幼儿的综合生活能力、开展个性化教育的重要契机。保教人员抓住来园时机与家长交流,能建立起良好的家园沟通平台,实现家园共育。由此可见,来园环节涉及很多工作内容,蕴含了很多的保教价值,在婴幼儿的一日生活中起到关键作用,是不可忽视的。
          </p>
          <h3 id="c039">
            <span class="bk1-h3"><span class="bj2-h3">二</span>  婴幼儿来园前的准备工作 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">二</span>  婴幼儿来园前的准备工作 </span
            >
          </h3>
          <h4 class="h4-zt" id="d103">(一)保教人员上岗前的个人准备工作</h4>
          <p>①提前10分钟到达工作岗位,更换舒适且便于运动的工作服。</p>
@@ -120,11 +127,11 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-14</div>
            <div class="header-bj zt02-bj"></div>
            <div class="content zt02-con">
              <div class="pageStr ztStr">2-14</div>
              <div class="title">
                <img src="../../image/chapter.png" alt="" />
                <img class="ztImg" src="../../image/zt.png" alt="" />
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -174,14 +181,14 @@
        <div class="header">
          <div class="pageHeader-second">
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-left zt02-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题二·来园活动护照</span>
                <span class="pageNum">2-15</span>
                <img src="../../image/zt-pen.png" class="zt-pen" alt="" />
                <span class="pageStr zt02-Str">专题二·来园活动护照</span>
                <span class="pageNum zt02-pageNum">2-15</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt02-bdline"></div>
          </div>
        </div>
@@ -191,19 +198,28 @@
            与班组的保教人员简单沟通当天的工作内容,保证婴幼儿一日生活有序进行。
          </p>
          <h3 id="c040">
            <span class="bk1-h3"><span class="bj2-h3">三</span>  来园活动存在的安全隐患 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">三</span>  来园活动存在的安全隐患 </span
            >
          </h3>
          <p>
            ①入园时,低龄婴幼儿的家长经常有很多琐事要告知与交接,托育机构的保教人员忙于接待,容易疏忽徘徊在门口的婴幼儿,导致婴幼儿自行离开,易发生意外或走失。
          </p>
          <p>②来园活动区域安排不当,空间布局拥挤,容易造成婴幼儿碰撞或跌倒。</p>
          <p>③在来园活动中,为婴幼儿投放的玩具过少,容易引起婴幼儿的争抢矛盾。</p>
          <p>④婴幼儿入园洗手、如厕后,地面的水渍未及时清理,容易致使滑倒受伤。</p>
          <p>
            ③在来园活动中,为婴幼儿投放的玩具过少,容易引起婴幼儿的争抢矛盾。
          </p>
          <p>
            ④婴幼儿入园洗手、如厕后,地面的水渍未及时清理,容易致使滑倒受伤。
          </p>
          <p>
            ⑤保教人员的管理不到位,没有关注到躲在角落里的婴幼儿,当意外发生时,不能及时采取有效措施。
          </p>
          <h3 id="c041">
            <span class="bk1-h3"><span class="bj2-h3">四</span>  防范来园活动中的安全问题 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">四</span
              >  防范来园活动中的安全问题 </span
            >
          </h3>
          <p>
            在婴幼儿来园前时,我们对环境和物品进行了安全检查,以排除隐患。在婴幼儿来园时,又要注意哪些安全问题?遇到问题该如何解决呢?
@@ -228,11 +244,11 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-16</div>
            <div class="header-bj zt02-bj"></div>
            <div class="content zt02-con">
              <div class="pageStr ztStr">2-16</div>
              <div class="title">
                <img src="../../image/chapter.png" alt="" />
                <img class="ztImg" src="../../image/zt.png" alt="" />
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -245,7 +261,9 @@
            来园活动结束后,保教人员要认真清点婴幼儿的人数,对于未到园的婴幼儿,要及时联系家长了解原因,并做好出勤记录。
          </p>
          <h3 id="c042">
            <span class="bk1-h3"><span class="bj2-h3">五</span>  来园接待的内容 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">五</span>  来园接待的内容 </span
            >
          </h3>
          <p>①营造温馨、舒适、轻松的环境,迎接婴幼儿的到来。</p>
          <p>②热情接待每一位家长和每一名婴幼儿,对婴幼儿亲切问好。</p>
@@ -256,7 +274,10 @@
          <p>⑤引导婴幼儿与同伴问好,与家长说再见。</p>
          <p>⑥引导婴幼儿愉快地加入班级活动。</p>
          <h3 id="c043">
            <span class="bk1-h3"><span class="bj2-h3">六</span>  安抚来园婴幼儿的不良情绪 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">六</span
              >  安抚来园婴幼儿的不良情绪 </span
            >
          </h3>
          <p>
            刚入园的婴幼儿普遍会出现哭闹和不愿入园的情况,表现多为亲子分离焦虑。婴幼儿在假期结束后或者病愈后返园,也容易产生不良情绪。婴幼儿对熟悉的环境和朝夕相处的亲人有很强的依赖性,一旦进入园所就意味着要与最亲的父母、最爱的家人、最熟悉的环境有短暂的分离,经受情感依恋的考验,这会导致情绪焦虑和情绪爆发。因此,安抚婴幼儿的情绪是来园活动中非常重要的一项工作,可以采取以下措施缓解入园的焦虑情绪。
@@ -285,14 +306,14 @@
        <div class="header">
          <div class="pageHeader-second">
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-left zt02-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题二·来园活动护照</span>
                <span class="pageNum">2-17</span>
                <img src="../../image/zt-pen.png" class="zt-pen" alt="" />
                <span class="pageStr zt02-Str">专题二·来园活动护照</span>
                <span class="pageNum zt02-pageNum">2-17</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt02-bdline"></div>
          </div>
        </div>
@@ -301,7 +322,10 @@
            宝宝也有依恋情感,会担心和不舍,甚至与婴幼儿一起流泪,反而容易将自己的情绪传递给婴幼儿,这对婴幼儿适应托育机构的生活是非常不利的。保教人员应引导家长将婴幼儿送到托育机构后微笑着与宝宝道别,不宜停留过久。
          </p>
          <h3 id="c044">
            <span class="bk1-h3"><span class="bj2-h3">七</span>  有效开展来园接待工作的方法 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">七</span
              >  有效开展来园接待工作的方法 </span
            >
          </h3>
          <h4 class="h4-zt" id="d113">(一)建立良好的师幼关系</h4>
          <p>
@@ -312,13 +336,17 @@
            来园时,保教人员可以与家长进行简短、有效的交流,了解婴幼儿在家的情况,了解婴幼儿的健康情况,以便于更好地开展婴幼儿一日生活的照料。同时,保教人员应有针对性地回应,展现出正确的教育理念和专业性,让家长增加对保教人员的信任感,拉近家园情感距离,增强家园衔接的有效性,以达到家园共育的最佳效果。
          </p>
          <h3 id="c045">
            <span class="bk1-h3"><span class="bj2-h3">八</span>  晨间检查的必要性 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">八</span>  晨间检查的必要性 </span
            >
          </h3>
          <p>
            婴幼儿自身免疫系统发育未完善,对各种疾病的抵抗力较差。入园前,原本单一、封闭的家庭养育模式使得婴幼儿与外界接触少,受细菌、病毒侵入的概率低。而进入托育机构后,婴幼儿相对聚集,如有一个婴幼儿患病,就很容易造成疾病传播,特别是传染病的发生和扩散。因此,及时发现和隔离,做到早发现、早报告、早隔离、早治疗,能确保每个幼儿的健康。认真执行晨间检查制度,是预防婴幼儿疾病的一个重要措施,是保证婴幼儿安全入园的重要途径,是托育机构日常工作的重要内容。
          </p>
          <h3 id="c046">
            <span class="bk1-h3"><span class="bj2-h3">九</span>  开展晨间检查 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">九</span>  开展晨间检查 </span
            >
          </h3>
          <h4 class="h4-zt" id="d115">(一)晨间检查用品的准备</h4>
          <p>保教人员应准备消毒过的体温计(或体温测量仪器)和压舌板,装有电</p>
@@ -330,11 +358,11 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-18</div>
            <div class="header-bj zt02-bj"></div>
            <div class="content zt02-con">
              <div class="pageStr ztStr">2-18</div>
              <div class="title">
                <img src="../../image/chapter.png" alt="" />
                <img class="ztImg" src="../../image/zt.png" alt="" />
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -377,20 +405,22 @@
        <div class="header">
          <div class="pageHeader-second">
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-left zt02-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题二·来园活动护照</span>
                <span class="pageNum">2-19</span>
                <img src="../../image/zt-pen.png" class="zt-pen" alt="" />
                <span class="pageStr zt02-Str">专题二·来园活动护照</span>
                <span class="pageNum zt02-pageNum">2-19</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt02-bdline"></div>
          </div>
        </div>
        <div class="bodystyle">
          <h3 id="c047">
            <span class="bk1-h3"><span class="bj2-h3">十</span>  接待带药的婴幼儿 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">十</span>  接待带药的婴幼儿 </span
            >
          </h3>
          <p>
            进入托育机构的婴幼儿经常会因为自身抵抗力差、环境改变、季节变化、情绪影响等因素出现病症,家长通常会及时带婴幼儿去医院就诊。在排除传染病疾病和器质性疾病后,保教人员还是会鼓励家长坚持送婴幼儿入园。因为长时间在家休养会使较小年龄的婴幼儿产生不愿意上托育机构的情绪,造成适应期延长,不利于婴幼儿的健康成长。
@@ -404,15 +434,22 @@
          <p>
            收纳管理婴幼儿药物时,必须根据“喂药委托及服药记录表”上的内容进行核对,并在药物标签上标注用药婴幼儿的姓名。给药时要仔细核对,确保婴幼儿用药的准确性和安全性。
          </p>
          <p><br/></p>
          <p><br /></p>
          <div class="bk-tx border-xxfs">
            <div class="bj3"><span class="cirlce"></span><span>学习反思</span></div>
            <textarea v-model="chapter011.textAreaItem.text39" style="border: 0" placeholder="请输入内容" rows="8"
              class="textareaInput" @blur="onBlurChange('text39')"></textarea>
            <div class="bj3">
              <span class="cirlce"></span><span>学习反思</span>
            </div>
            <textarea
              v-model="chapter011.textAreaItem.text39"
              style="border: 0"
              placeholder="请输入内容"
              rows="8"
              class="textareaInput"
              @blur="onBlurChange('text39')"
            ></textarea>
          </div>
        </div>
      </div>
    </div>
  </div>
</template>
src/books/lifeCare/view/components/chapter012.vue
@@ -3,7 +3,9 @@
    <div class="page-box" page="171">
      <div v-if="showPageList.indexOf(171) > -1">
        <div class="bodystyle topImg">
          <h2 id="b011"><img class="img-0" alt="" src="../../image/zt3.jpg" /></h2>
          <h2 id="b011">
            <img class="img-0" alt="" src="../../image/zt3.jpg" />
          </h2>
          <div class="bk">
            <div class="bj1">
              <p class="left">
@@ -58,20 +60,22 @@
        <div class="header">
          <div class="pageHeader-second">
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-left zt03-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题三·盥洗活动照护</span>
                <span class="pageNum">2-21</span>
                <img src="../../image/zt-pen.png" class="zt-pen" alt="" />
                <span class="pageStr zt03-Str">专题三·盥洗活动照护</span>
                <span class="pageNum zt03-pageNum">2-21</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt03-bdline"></div>
          </div>
        </div>
        <div class="bodystyle">
          <h3 id="c048">
            <span class="bk1-h3"><span class="bj2-h3">一</span>  洗手的重要性 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">一</span>  洗手的重要性 </span
            >
          </h3>
          <div class="bk-ztgs">
            <p class="bj1-ztgs">⊙ 关于洗手的故事 ⊙</p>
@@ -89,12 +93,16 @@
          <p>
            婴幼儿的免疫系统不成熟、不完善,容易受到各种不良因素的影响,成为被感染的高危人群。洗手是预防疾病最简便有效的措施之一。婴幼儿在生活中,手不断接触到被病毒、细菌污染的物品,如果不能及时正确洗手,手上的病原体可能通过手和口、眼、鼻的黏膜接触进入人体。洗手可以简单有效地切断这一途径,降低感染风险。
          </p>
          <h4 class="h4-zt" id="d119">(二)保教人员洗手可以有效减少交叉感染</h4>
          <h4 class="h4-zt" id="d119">
            (二)保教人员洗手可以有效减少交叉感染
          </h4>
          <p>
            保教人员需要频繁接触婴幼儿,如果自身不注意手的卫生,就会将手上携带的病菌传播给婴幼儿,造成交叉感染。
          </p>
          <h3 id="c049">
            <span class="bk1-h3"><span class="bj2-h3">二</span>  洗手的时机 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">二</span>  洗手的时机 </span
            >
          </h3>
          <p>
            婴幼儿在如厕后、吃东西前、接触宠物后、外出归来后(去户外活动或外出游玩回来)、咳嗽后、打喷嚏后、擦鼻涕后、接触脏东西后都需要洗手。
@@ -110,11 +118,11 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-22</div>
            <div class="header-bj zt03-bj"></div>
            <div class="content zt03-con">
              <div class="pageStr ztStr">2-22</div>
              <div class="title">
                <img src="../../image/chapter.png" alt="" />
                <img src="../../image/zt.png" class="ztImg" alt="" />
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -122,7 +130,9 @@
        </div>
        <div class="bodystyle">
          <h3 id="c050">
            <span class="bk1-h3"><span class="bj2-h3">三</span>  组织和指导婴幼儿洗手 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">三</span>  组织和指导婴幼儿洗手 </span
            >
          </h3>
          <p><br /></p>
          <div class="bk-zt1">
@@ -222,20 +232,23 @@
        <div class="header">
          <div class="pageHeader-second">
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-left zt03-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题三·盥洗活动照护</span>
                <span class="pageNum">2-23</span>
                <img src="../../image/zt-pen.png" class="zt-pen" alt="" />
                <span class="pageStr zt03-Str">专题三·盥洗活动照护</span>
                <span class="pageNum zt03-pageNum">2-23</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt03-bdline"></div>
          </div>
        </div>
        <div class="bodystyle">
          <h3 id="c051">
            <span class="bk1-h3"><span class="bj2-h3">四</span>  根据婴幼儿眼睛、耳朵、鼻腔、口腔和皮肤的特点实施清洁 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">四</span
              >  根据婴幼儿眼睛、耳朵、鼻腔、口腔和皮肤的特点实施清洁 </span
            >
          </h3>
          <h4 class="h4-zt" id="d123">(一)婴幼儿眼睛的特点及清洁要点</h4>
          <p>眼睛的结构如图2-3-2所示。</p>
@@ -274,11 +287,11 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-24</div>
            <div class="header-bj zt03-bj"></div>
            <div class="content zt03-con">
              <div class="pageStr ztStr">2-24</div>
              <div class="title">
                <img src="../../image/chapter.png" alt="" />
                <img src="../../image/zt.png" class="ztImg" alt="" />
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -321,14 +334,14 @@
        <div class="header">
          <div class="pageHeader-second">
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-left zt03-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题三·盥洗活动照护</span>
                <span class="pageNum">2-25</span>
                <img src="../../image/zt-pen.png" class="zt-pen" alt="" />
                <span class="pageStr zt03-Str">专题三·盥洗活动照护</span>
                <span class="pageNum zt03-pageNum">2-25</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt03-bdline"></div>
          </div>
        </div>
@@ -341,7 +354,9 @@
          <p class="img">图2-3-4 鼻腔的结构</p>
          <h5 class="h5-zt" id="e107">1.婴幼儿鼻腔的特点</h5>
          <p>(1)容易感染</p>
          <p>婴幼儿鼻腔内黏膜柔软,鼻毛较少,对空气的过滤作用较弱,容易感染。</p>
          <p>
            婴幼儿鼻腔内黏膜柔软,鼻毛较少,对空气的过滤作用较弱,容易感染。
          </p>
          <p>(2)容易堵塞</p>
          <p>
            婴幼儿鼻腔较狭窄,血管丰富,遇到轻微的刺激就会充血水肿,引发鼻黏膜肿胀,分泌物增多,造成鼻腔堵塞。
@@ -373,11 +388,11 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-26</div>
            <div class="header-bj zt03-bj"></div>
            <div class="content zt03-con">
              <div class="pageStr ztStr">2-26</div>
              <div class="title">
                <img src="../../image/chapter.png" alt="" />
                <img src="../../image/zt.png" class="ztImg" alt="" />
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -409,7 +424,9 @@
          </p>
          <h5 class="h5-zt" id="e110">2.影响婴幼儿口腔健康的因素</h5>
          <p>婴幼儿口腔健康受到很多因素的影响,见表2-3-2。</p>
          <p class="img">表2-3-2 影响婴幼儿口腔健康的因素及维护口腔健康的做法</p>
          <p class="img">
            表2-3-2 影响婴幼儿口腔健康的因素及维护口腔健康的做法
          </p>
          <p class="center openImgBox">
            <img class="img-a" alt="" src="../../image/0189-3.jpg" />
          </p>
@@ -422,14 +439,14 @@
        <div class="header">
          <div class="pageHeader-second">
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-left zt03-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题三·盥洗活动照护</span>
                <span class="pageNum">2-27</span>
                <img src="../../image/zt-pen.png" class="zt-pen" alt="" />
                <span class="pageStr zt03-Str">专题三·盥洗活动照护</span>
                <span class="pageNum zt03-pageNum">2-27</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt03-bdline"></div>
          </div>
        </div>
@@ -472,11 +489,11 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-28</div>
            <div class="header-bj zt03-bj"></div>
            <div class="content zt03-con">
              <div class="pageStr ztStr">2-28</div>
              <div class="title">
                <img src="../../image/chapter.png" alt="" />
                <img src="../../image/zt.png" class="ztImg" alt="" />
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -507,7 +524,9 @@
            保育员需要每天用清水帮助婴幼儿洗脸、手、耳等皮肤裸露的部分,勤为其洗澡、洗头,勤剪指甲,保持皮肤清洁。若婴幼儿的皮脂腺分泌物过多,在头皮上形成一层黄褐色的痂皮,可将植物油加热,晾凉之后用来闷软痂皮,然后再清洗。在盥洗过程中需要注意保温,正确选用婴幼儿洗护用品,必须为婴幼儿选用专用护肤品,切不可用成人的清洁用品、护肤品及有刺激性的化妆品。在皮肤上涂拭药物也要注意药物的浓度和剂量,不可过量。
          </p>
          <h3 id="c052">
            <span class="bk1-h3"><span class="bj2-h3">五</span>  不同性别的婴幼儿的清洁 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">五</span>  不同性别的婴幼儿的清洁 </span
            >
          </h3>
          <h4 class="h4-zt" id="d128">(一)女童</h4>
          <p>
@@ -522,14 +541,14 @@
        <div class="header">
          <div class="pageHeader-second">
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-left zt03-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题三·盥洗活动照护</span>
                <span class="pageNum">2-29</span>
                <img src="../../image/zt-pen.png" class="zt-pen" alt="" />
                <span class="pageStr zt03-Str">专题三·盥洗活动照护</span>
                <span class="pageNum zt03-pageNum">2-29</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt03-bdline"></div>
          </div>
        </div>
        <div class="bodystyle">
@@ -544,7 +563,10 @@
            男童最难清理的是生殖器官。刚出生的男童的包皮还紧附在龟头上,只需要把露在外面的部分轻轻洗干净即可。大部分的男童在2岁之前,包皮和龟头不会完全分开,这时特地翻开包皮清洗,如果成人动作太大或孩子乱动都容易弄伤男童。待男童长大一些,包皮与龟头完全分开之后,再协助男童翻开包皮清洗,清洗时,动作一定要轻柔,在皱褶处多花些时间。男童没有所谓“从前往后”的清洗原则,但应好好清洗皮肤皱褶处。平时如厕后用婴幼儿专用湿纸巾擦干净,洗澡的时候可以用干净的纱布擦拭大腿根部、外阴部的皮肤皱褶处,对于男童的睾丸要轻柔、仔细,包括阴茎下方、睾丸与皮肤贴合之处都要清洗干净。
          </p>
          <h3 id="c053">
            <span class="bk1-h3"><span class="bj2-h3">六</span>  使婴幼儿养成良好的盥洗习惯 </span>
            <span class="bk1-h3"
              ><span class="bj2-h3">六</span
              >  使婴幼儿养成良好的盥洗习惯 </span
            >
          </h3>
          <p>
            良好的盥洗习惯有利于婴幼儿身心健康的发展和行为习惯的培养。保育员应对不同年龄的婴幼儿进行盥洗训练和指导,以便婴幼儿熟练掌握盥洗技能,形成自觉盥洗的习惯。
@@ -561,11 +583,11 @@
        <!-- 偶数页 -->
        <div class="header">
          <div class="pageHeader-first">
            <div class="header-bj"></div>
            <div class="content">
              <div class="pageStr">2-30</div>
            <div class="header-bj zt03-bj"></div>
            <div class="content zt03-con">
              <div class="pageStr ztStr">2-30</div>
              <div class="title">
                <img src="../../image/chapter.png" alt="" />
                <img src="../../image/zt.png" class="ztImg" alt="" />
                <span class="cahpter">婴幼儿生活照护·阅读手册</span>
              </div>
            </div>
@@ -573,26 +595,30 @@
        </div>
        <div class="bodystyle">
          <p class="center openImgBox">
            <img class="img-b" alt="" src="../../image/0193-1.jpg" />
          </p>
          <p class="img">图2-3-7 托育园的盥洗环境</p>
          <h4 class="h4-zt" id="d131">(二)鼓励幼儿练习盥洗</h4>
          <p>
            保育员不要因为担心幼儿自己洗不干净而包办代替,应放手让幼儿练习盥洗。针对13~24个月龄的幼儿,应协助和引导幼儿自己洗手、刷牙;针对25~36月龄的幼儿,应引导幼儿餐后漱口,正确刷牙,使用肥皂或洗手液正确洗手,认识自己的毛巾并擦手。
          </p>
          <h4 class="h4-zt" id="d132">(三)发挥示范的积极作用</h4>
          <p>
            成人是婴幼儿模仿的重要对象,保育员的日常行为随时都会对婴幼儿的发展产生潜移默化的影响。保育员要善于抓住一切机会为婴幼儿做好行为示范,用自己良好的盥洗习惯去影响他们。同伴是婴幼儿观摩学习的榜样。保育员可以在婴幼儿中树立良好的典型,让婴幼儿相互交流、观摩和学习。
          </p>
          <h4 class="h4-zt" id="d133">(四)根据年龄特点因材施教</h4>
          <p>
            不同年龄婴幼儿的盥洗教育的指导内容和方法应各有不同。对1岁以内的婴儿,保育员以全程帮助为主;1~2岁的幼儿,保育员可以在部分简单的环节放手让幼儿独立完成,难以完成的环节由保育员帮助完成;2~3岁的幼儿,保育员在每日的盥洗环节指导幼儿练习,学会大多数盥洗内容的操作。因为婴幼儿各方面的能力较低,保育员必须对婴幼儿进行反复的、持之以恒的指导和训练,才可能取得较好的效果。
          </p>
          <h4 class="h4-zt" id="d134">(五)开展适当的行为强化</h4>
          <p>
            任何一项盥洗活动都包括许多步骤,只有反复练习,婴幼儿才会熟练掌握,并形成习惯。针对一些婴幼儿在盥洗时表现出的种种不良行为习惯,应选择正确的行为作为目标不断强化。例如,对于盥洗时爱嬉闹的婴幼儿,要求在规定的时间内完成;对于推挤、有攻击行为的婴幼儿,不忘提醒其遵守盥洗要求;当婴幼儿缺乏控制能力时,保育员要有意识地利用语言、表情、动作等给予暗示,及时提醒,如提醒婴幼儿随手关紧水龙头,让婴幼儿从小养成节约用水的好习惯。
          </p>
          <div class="rightPng">
            <p class="center openImgBox">
              <img class="img-b" alt="" src="../../image/0193-1.jpg" />
            </p>
            <p class="img">图2-3-7 托育园的盥洗环境</p>
          </div>
          <div>
            <h4 class="h4-zt" id="d131">(二)鼓励幼儿练习盥洗</h4>
            <p>
              保育员不要因为担心幼儿自己洗不干净而包办代替,应放手让幼儿练习盥洗。针对13~24个月龄的幼儿,应协助和引导幼儿自己洗手、刷牙;针对25~36月龄的幼儿,应引导幼儿餐后漱口,正确刷牙,使用肥皂或洗手液正确洗手,认识自己的毛巾并擦手。
            </p>
            <h4 class="h4-zt" id="d132">(三)发挥示范的积极作用</h4>
            <p>
              成人是婴幼儿模仿的重要对象,保育员的日常行为随时都会对婴幼儿的发展产生潜移默化的影响。保育员要善于抓住一切机会为婴幼儿做好行为示范,用自己良好的盥洗习惯去影响他们。同伴是婴幼儿观摩学习的榜样。保育员可以在婴幼儿中树立良好的典型,让婴幼儿相互交流、观摩和学习。
            </p>
            <h4 class="h4-zt" id="d133">(四)根据年龄特点因材施教</h4>
            <p>
              不同年龄婴幼儿的盥洗教育的指导内容和方法应各有不同。对1岁以内的婴儿,保育员以全程帮助为主;1~2岁的幼儿,保育员可以在部分简单的环节放手让幼儿独立完成,难以完成的环节由保育员帮助完成;2~3岁的幼儿,保育员在每日的盥洗环节指导幼儿练习,学会大多数盥洗内容的操作。因为婴幼儿各方面的能力较低,保育员必须对婴幼儿进行反复的、持之以恒的指导和训练,才可能取得较好的效果。
            </p>
            <h4 class="h4-zt" id="d134">(五)开展适当的行为强化</h4>
            <p>
              任何一项盥洗活动都包括许多步骤,只有反复练习,婴幼儿才会熟练掌握,并形成习惯。针对一些婴幼儿在盥洗时表现出的种种不良行为习惯,应选择正确的行为作为目标不断强化。例如,对于盥洗时爱嬉闹的婴幼儿,要求在规定的时间内完成;对于推挤、有攻击行为的婴幼儿,不忘提醒其遵守盥洗要求;当婴幼儿缺乏控制能力时,保育员要有意识地利用语言、表情、动作等给予暗示,及时提醒,如提醒婴幼儿随手关紧水龙头,让婴幼儿从小养成节约用水的好习惯。
            </p>
          </div>
        </div>
      </div>
    </div>
@@ -602,14 +628,14 @@
        <div class="header">
          <div class="pageHeader-second">
            <div class="second-con">
              <div class="second-left"></div>
              <div class="second-left zt03-left"></div>
              <div class="second-right">
                <img src="../../image/pageImg.png" alt="" />
                <span class="pageStr">专题三·盥洗活动照护</span>
                <span class="pageNum">2-31</span>
                <img src="../../image/zt-pen.png" class="zt-pen" alt="" />
                <span class="pageStr zt03-Str">专题三·盥洗活动照护</span>
                <span class="pageNum zt03-pageNum">2-31</span>
              </div>
            </div>
            <div class="borderLine"></div>
            <div class="borderLine zt03-bdline"></div>
          </div>
        </div>
@@ -621,11 +647,19 @@
          <p>
            良好的盥洗习惯是人不可缺少的素质之一,对于孩子今后的健康发展也具有相当重要的作用。我们应从小为孩子播下良好习惯的种子,因为有良好盥洗习惯的孩子将终身受益。
          </p>
          <p><br/></p>
          <p><br /></p>
          <div class="bk-tx border-xxfs">
            <div class="bj3"><span class="cirlce"></span><span>学习反思</span></div>
            <textarea v-model="chapter012.textAreaItem.text39" style="border: 0" placeholder="请输入内容" rows="8"
              class="textareaInput" @blur="onBlurChange('text39')"></textarea>
            <div class="bj3">
              <span class="cirlce"></span><span>学习反思</span>
            </div>
            <textarea
              v-model="chapter012.textAreaItem.text39"
              style="border: 0"
              placeholder="请输入内容"
              rows="8"
              class="textareaInput"
              @blur="onBlurChange('text39')"
            ></textarea>
          </div>
        </div>
      </div>
src/books/lifeCare/view/components/index.vue
@@ -191,7 +191,7 @@
  },
  mounted() {
    // 默认加载章节
    this.showCatalogList = [1];
    this.showCatalogList = [14];
    // 滚动监听节流
    this.throttledScrollHandler = _.throttle(
      this.scrollFun,
src/books/mathBook/assets/images/0100-1.jpg

src/books/mathBook/assets/images/0100-2.jpg

src/books/mathBook/assets/images/0100-3.jpg

src/books/mathBook/assets/images/0101-1.jpg

src/books/mathBook/assets/images/0101-2.jpg

src/books/mathBook/assets/images/0102-1.jpg

src/books/mathBook/assets/images/0102-2.jpg

src/books/mathBook/assets/images/0103-1.jpg

src/books/mathBook/assets/images/0103-2.jpg

src/books/mathBook/assets/images/Cover.jpg

src/books/mathBook/assets/images/Covers.png

src/books/mathBook/assets/images/cxgk.jpg

src/books/mathBook/assets/images/dy1.jpg

src/books/mathBook/assets/images/dy3.jpg

src/books/mathBook/assets/images/hzjl.jpg

src/books/mathBook/assets/images/icon/heart-check.png

src/books/mathBook/assets/images/icon/heart.png

src/books/mathBook/assets/images/question/0103-1-1.png

src/books/mathBook/assets/images/question/0103-1-2.png

src/books/mathBook/assets/images/question/0103-1-3.png

src/books/mathBook/assets/images/question/0103-1-4.png

src/books/mathBook/assets/images/stlx.jpg

src/books/mathBook/assets/images/tbts.jpg

src/books/mathBook/assets/images/tjfx.jpg

src/books/mathBook/assets/images/wttc.jpg

src/books/mathBook/assets/images/xxmb.jpg

src/books/mathBook/assets/main.less
File was renamed from src/books/math/assets/main.less
@@ -661,7 +661,7 @@
  }
  .video-border {
    border: 1px solid #15c0f2;
    border-radius: 30px;
    border-radius: 20px;
  }
  .fm-st {
    font-family: "STKaiti";
@@ -740,8 +740,8 @@
  }
  .collect-btn {
    cursor: pointer;
    width: 20px;
    height: 20px;
    width: 16px;
    height: 16px;
    margin-left: 10px;
  }
  // 显示答案按钮
@@ -750,10 +750,10 @@
    cursor: pointer;
    text-indent: 0;
    display: inline-block;
    border:1px solid #8281ED;
    border:1px solid #00a1e9;
    height: 22px;
    padding: 5px;
    background-color:#8281ED ;
    padding: 2px;
    background-color:#00a1e9 ;
    border-radius: 5px;
    svg {
      fill: #fff;
@@ -761,7 +761,7 @@
    &:hover {
      background-color: #fff;
      svg {
        fill:#8281ED ;
        fill:#00a1e9 ;
      }
    }
  }
src/books/mathBook/view/components/chapter001.vue
File was renamed from src/books/math/view/components/chapter001.vue
@@ -90,15 +90,7 @@
          <p class="center openImgBox">
            <img class="img-c" alt="" src="../../assets/images/0100-3.jpg" />
          </p>
          <p class="img fl al-cn ju-cn">
            <span>图3-14 </span
            ><img
              :src="chapterData.isCollectImg ? collectCheck : collectImg"
              alt=""
              class="collect-btn"
              @click="handleCollect('img')"
            />
          </p>
          <p class="img">图3-14</p>
          <p>
            观察图3-14(1)
            发现,函数<i>f</i>(<i>x</i>)=|<i>x</i>|的定义域是(-∞,+∞),函数图像关于<i>y</i>轴对称.从表3-11中还发现,当自变量取一对相反数时,对应的函数值相等,如<i>f</i>(-1)=<i>f</i>(1)=1,<i>f</i>(-2)=<i>f</i>(2)=2,<i>f</i>(-3)=<i>f</i>(3)=3,…实际上,对任意<i>x</i>∈(-∞,+∞),都有<i>f</i>(-<i>x</i>)=|-<i>x</i>|=|<i>x</i>|=<i>f</i>(<i>x</i>),即<i>f</i>(-<i>x</i>)=<i>f</i>(<i>x</i>).
@@ -146,7 +138,17 @@
              style="width: 40%"
            />
          </p>
          <p class="img">图3-15</p>
          <p class="img fl fl-cn ju-cn">
            <span>图3-15</span>
            <el-tooltip class="item" effect="dark" :content="chapterData.isCollectImg ? '点击取消' : '点击收藏'" placement="top-start">
              <img
              :src="chapterData.isCollectImg ? collectCheck : collectImg"
              alt=""
              class="collect-btn"
              @click="handleCollect('img')"
            />
            </el-tooltip>
          </p>
          <video
            :src="videoPath"
            webkit-playsinline="true"
@@ -159,14 +161,16 @@
            controlslist="nodownload"
            class="video-border w100"
          ></video>
          <p class="img fl al-cn ju-cn">
          <p class="img fl fl-cn ju-cn">
            <span>视频:判数函数奇偶性的方法和步骤 </span>
            <img
            <el-tooltip class="item" effect="dark" :content="chapterData.isCollectVideo ? '点击取消' : '点击收藏'" placement="top-start">
              <img
              :src="chapterData.isCollectVideo ? collectCheck : collectImg"
              alt=""
              class="collect-btn"
              @click="handleCollect('video')"
            />
            </el-tooltip>
          </p>
          <p>
            <span class="zt-ls"><b>例1</b></span
@@ -282,8 +286,8 @@
              >
                <svg
                  xmlns="http://www.w3.org/2000/svg"
                  width="20.501"
                  height="20.501"
                  width="18.501"
                  height="18.501"
                  viewBox="0 0 20.501 20.501"
                >
                  <path
@@ -296,8 +300,8 @@
              <span class="btn-box" @click="openThinkingDialog">
                <svg
                  xmlns="http://www.w3.org/2000/svg"
                  width="20.545"
                  height="22.112"
                  width="18.545"
                  height="20.112"
                  viewBox="0 0 20.545 22.112"
                >
                  <path
@@ -307,38 +311,11 @@
                  />
                </svg>
              </span>
              <span class="btn-box" @click="openMathDiaolog">
                <svg
                  xmlns="http://www.w3.org/2000/svg"
                  xmlns:xlink="http://www.w3.org/1999/xlink"
                  width="18.323"
                  height="18.939"
                  viewBox="0 0 18.323 15.939"
                >
                  <g transform="translate(-398 -946)">
                    <path
                      class="a"
                      d="M11.985,1.241a.894.894,0,0,1-.242.623.79.79,0,0,1-.6.263.644.644,0,0,1-.547-.229,3.034,3.034,0,0,1-.339-.741A.935.935,0,0,0,10.1.846a.4.4,0,0,0-.291-.1.36.36,0,0,0-.333.18,1.836,1.836,0,0,0-.2.478L8.251,4.753H9.7l-.27.79H8.043l-1.51,4.849a27.9,27.9,0,0,1-1.06,2.93,5.5,5.5,0,0,1-1.316,1.857,3.11,3.11,0,0,1-2.189.755,2.258,2.258,0,0,1-1.455-.409A1.192,1.192,0,0,1,0,14.618a.97.97,0,0,1,.27-.693.894.894,0,0,1,.693-.291.741.741,0,0,1,.693.27,1.815,1.815,0,0,1,.2.693c0,.381.2.575.492.575a.817.817,0,0,0,.693-.478,6.983,6.983,0,0,0,.568-1.469L6,5.543H4.5l.236-.776h1.5l.159-.54a14.548,14.548,0,0,1,.693-2.016A4.544,4.544,0,0,1,8.313.694,2.91,2.91,0,0,1,10.281,0a2.425,2.425,0,0,1,.8.145,1.5,1.5,0,0,1,.693.429.963.963,0,0,1,.236.693Z"
                      transform="translate(398 948)"
                    />
                    <path
                      class="b"
                      d="M18.323,5.668a3.505,3.505,0,0,1-.152,1.046H17.36a3.969,3.969,0,0,0,.166-1.06.5.5,0,0,0-.062-.236.27.27,0,0,0-.249-.132.346.346,0,0,0-.229.076c-.069.055-.222.208-.471.471L14.936,7.489a22.329,22.329,0,0,0-1.552,1.621l-1.815,1.974a2.168,2.168,0,0,1-1.385.859c-.492,0-.741-.333-.741-.991a3.575,3.575,0,0,1,.3-1.385h.914a4.766,4.766,0,0,0-.263,1.1c0,.18.048.263.159.263s.242-.111.464-.333l2.147-2.286c-.006-.033,1.525-1.611,1.524-1.6l1.3-1.385a2.078,2.078,0,0,1,1.385-.8.755.755,0,0,1,.776.388,1.9,1.9,0,0,1,.173.776Z"
                      transform="translate(398 948)"
                    />
                    <path
                      class="a"
                      d="M14.936,7.489l.693,2.251a5.154,5.154,0,0,0,.236.61c.083.159.18.242.3.242a.82.82,0,0,0,.533-.457,4.849,4.849,0,0,0,.339-.817H17.8a4.849,4.849,0,0,1-.693,1.51,2.813,2.813,0,0,1-.873.852,1.766,1.766,0,0,1-.88.27,1.178,1.178,0,0,1-1.018-.464,4.357,4.357,0,0,1-.623-1.309l-.326-1.067a6.4,6.4,0,0,0-.222-.8L12.747,7c-.083-.27-.152-.478-.2-.6a1.136,1.136,0,0,0-.194-.312.4.4,0,0,0-.284-.118c-.326,0-.6.423-.817,1.261h-.769a6.671,6.671,0,0,1,.6-1.5,3.034,3.034,0,0,1,.81-.873,1.663,1.663,0,0,1,.942-.312,1.344,1.344,0,0,1,1.067.471,3.692,3.692,0,0,1,.644,1.268l.139.436C14.672,6.7,14.936,7.489,14.936,7.489Z"
                      transform="translate(398 948)"
                    />
                  </g>
                </svg>
              </span>
              <span class="btn-box" @click="stepDialog = true">
                <svg
                  xmlns="http://www.w3.org/2000/svg"
                  width="19.28"
                  height="20.563"
                  width="17.28"
                  height="19.563"
                  viewBox="0 0 19.28 20.563"
                >
                  <g transform="translate(-109.056 -82.941)">
@@ -360,6 +337,33 @@
                  </g>
                </svg>
              </span>
              <span class="btn-box" @click="openMathDiaolog">
                <svg
                  xmlns="http://www.w3.org/2000/svg"
                  xmlns:xlink="http://www.w3.org/1999/xlink"
                  width="17.323"
                  height="17.939"
                  viewBox="0 0 18.323 15.939"
                >
                  <g transform="translate(-398 -946)">
                    <path
                      class="a"
                      d="M11.985,1.241a.894.894,0,0,1-.242.623.79.79,0,0,1-.6.263.644.644,0,0,1-.547-.229,3.034,3.034,0,0,1-.339-.741A.935.935,0,0,0,10.1.846a.4.4,0,0,0-.291-.1.36.36,0,0,0-.333.18,1.836,1.836,0,0,0-.2.478L8.251,4.753H9.7l-.27.79H8.043l-1.51,4.849a27.9,27.9,0,0,1-1.06,2.93,5.5,5.5,0,0,1-1.316,1.857,3.11,3.11,0,0,1-2.189.755,2.258,2.258,0,0,1-1.455-.409A1.192,1.192,0,0,1,0,14.618a.97.97,0,0,1,.27-.693.894.894,0,0,1,.693-.291.741.741,0,0,1,.693.27,1.815,1.815,0,0,1,.2.693c0,.381.2.575.492.575a.817.817,0,0,0,.693-.478,6.983,6.983,0,0,0,.568-1.469L6,5.543H4.5l.236-.776h1.5l.159-.54a14.548,14.548,0,0,1,.693-2.016A4.544,4.544,0,0,1,8.313.694,2.91,2.91,0,0,1,10.281,0a2.425,2.425,0,0,1,.8.145,1.5,1.5,0,0,1,.693.429.963.963,0,0,1,.236.693Z"
                      transform="translate(398 948)"
                    />
                    <path
                      class="b"
                      d="M18.323,5.668a3.505,3.505,0,0,1-.152,1.046H17.36a3.969,3.969,0,0,0,.166-1.06.5.5,0,0,0-.062-.236.27.27,0,0,0-.249-.132.346.346,0,0,0-.229.076c-.069.055-.222.208-.471.471L14.936,7.489a22.329,22.329,0,0,0-1.552,1.621l-1.815,1.974a2.168,2.168,0,0,1-1.385.859c-.492,0-.741-.333-.741-.991a3.575,3.575,0,0,1,.3-1.385h.914a4.766,4.766,0,0,0-.263,1.1c0,.18.048.263.159.263s.242-.111.464-.333l2.147-2.286c-.006-.033,1.525-1.611,1.524-1.6l1.3-1.385a2.078,2.078,0,0,1,1.385-.8.755.755,0,0,1,.776.388,1.9,1.9,0,0,1,.173.776Z"
                      transform="translate(398 948)"
                    />
                    <path
                      class="a"
                      d="M14.936,7.489l.693,2.251a5.154,5.154,0,0,0,.236.61c.083.159.18.242.3.242a.82.82,0,0,0,.533-.457,4.849,4.849,0,0,0,.339-.817H17.8a4.849,4.849,0,0,1-.693,1.51,2.813,2.813,0,0,1-.873.852,1.766,1.766,0,0,1-.88.27,1.178,1.178,0,0,1-1.018-.464,4.357,4.357,0,0,1-.623-1.309l-.326-1.067a6.4,6.4,0,0,0-.222-.8L12.747,7c-.083-.27-.152-.478-.2-.6a1.136,1.136,0,0,0-.194-.312.4.4,0,0,0-.284-.118c-.326,0-.6.423-.817,1.261h-.769a6.671,6.671,0,0,1,.6-1.5,3.034,3.034,0,0,1,.81-.873,1.663,1.663,0,0,1,.942-.312,1.344,1.344,0,0,1,1.067.471,3.692,3.692,0,0,1,.644,1.268l.139.436C14.672,6.7,14.936,7.489,14.936,7.489Z"
                      transform="translate(398 948)"
                    />
                  </g>
                </svg>
              </span>
            </li>
            <li class="fl fl-cn">
              <p>(2) <i>f</i>(<i>x</i>)=<i>x</i><sup>2</sup>+<i>x</i>;</p>
@@ -367,10 +371,10 @@
                class="btn-box"
                @click="isShowExampleFour = !isShowExampleFour"
              >
                <svg
              <svg
                  xmlns="http://www.w3.org/2000/svg"
                  width="20.501"
                  height="20.501"
                  width="18.501"
                  height="18.501"
                  viewBox="0 0 20.501 20.501"
                >
                  <path
@@ -384,8 +388,8 @@
                <svg
                  xmlns="http://www.w3.org/2000/svg"
                  xmlns:xlink="http://www.w3.org/1999/xlink"
                  width="18.323"
                  height="18.939"
                  width="17.323"
                  height="17.939"
                  viewBox="0 0 18.323 15.939"
                >
                  <g transform="translate(-398 -946)">
@@ -414,10 +418,10 @@
                class="btn-box"
                @click="isShowExampleFive = !isShowExampleFive"
              >
                <svg
              <svg
                  xmlns="http://www.w3.org/2000/svg"
                  width="20.501"
                  height="20.501"
                  width="18.501"
                  height="18.501"
                  viewBox="0 0 20.501 20.501"
                >
                  <path
@@ -431,8 +435,8 @@
                <svg
                  xmlns="http://www.w3.org/2000/svg"
                  xmlns:xlink="http://www.w3.org/1999/xlink"
                  width="18.323"
                  height="18.939"
                  width="17.323"
                  height="17.939"
                  viewBox="0 0 18.323 15.939"
                >
                  <g transform="translate(-398 -946)">
@@ -750,20 +754,26 @@
          if (oldAnswer) {
            oldAnswer = JSON.parse(oldAnswer);
            console.log("旧数据", oldAnswer);
            if(oldAnswer[9]) {
            if (oldAnswer[9]) {
              for (let index = 0; index < res.data.data.length; index++) {
                const item = res.data.data[index];
                if(item.infoList.length) {
                  for (let cindex = 0; cindex < item.infoList.length; cindex++) {
                  const citem = item.infoList[cindex];
                  const question = oldAnswer[9].find(ditem => ditem.id == citem.id)
                  if(question) {
                    citem.userAnswer = question.userAnswer
                if (item.infoList.length) {
                  for (
                    let cindex = 0;
                    cindex < item.infoList.length;
                    cindex++
                  ) {
                    const citem = item.infoList[cindex];
                    const question = oldAnswer[9].find(
                      (ditem) => ditem.id == citem.id
                    );
                    if (question) {
                      citem.userAnswer = question.userAnswer;
                    }
                  }
                }
                }
              }
            }
            }
          }
          this.questionData = res.data.data;
        });
src/books/mathBook/view/components/header.vue
File was renamed from src/books/math/view/components/header.vue
@@ -81,7 +81,7 @@
  props: {
    showPageList: {
      type: Array,
      default: [],
      // default: [],
    },
    data() {
      return {};
src/books/mathBook/view/components/index.vue
src/books/mathBook/view/index.vue
src/books/sportsAndHealth/css/default.less
@@ -18,7 +18,6 @@
      font-size: 18px;
      .chapter {
        textarea {
          width: 100%;
          font-family: 'FZLTXIHJW';
@@ -1732,7 +1731,42 @@
  }
}
.pdfModal {
  width: 100%;
  height: 90vh;
}
@media screen and (max-width:800px) {
  .pdfModal {
    width: 100%;
    height: 60vh;
  }
  .custom-dialog {
    .el-dialog {
      width: 90vw !important;
    }
  }
}
.custom-dialog {
  .el-dialog__body {
    padding: 0;
  }
  .el-dialog__header {
    background-color: rgba(0, 0, 0, 0.8);
    .el-dialog__title,
    .el-dialog__headerbtn .el-dialog__close {
      color: #fff;
      font-weight: 900;
      font-size: 16px;
      font-family: 'FZLTXIHJW';
    }
  }
}
.tablePublic input[type="checkbox"]:checked+.checkmark {
  background: #000 !important;
src/books/sportsAndHealth/view/components/index.vue
@@ -264,11 +264,8 @@
  },
  methods: {
    changeDomViewer() {
      setTimeout(() => {
        this.initViewer();
      }, 500);
      this.initViewer();
    },
    // 滚动监听
    scrollFun(event) {
      // 判断向上滚动还是向下滚动
@@ -605,19 +602,19 @@
              if (testData && testData[catalog]) {
                if (testData[catalog][page]) {
                  if (Array.isArray(testData[catalog][page])) {
                      this.questionDataMap[page] = await getQuestionList(
                        page,
                        testData[catalog][page],
                        this.config.activeBook
                      );
                    this.questionDataMap[page] = await getQuestionList(
                      page,
                      testData[catalog][page],
                      this.config.activeBook
                    );
                  } else {
                    const obj = {};
                    for (let key in testData[catalog][page]) {
                          obj[key] = await getQuestionList(
                          [],
                          testData[catalog][page][key],
                          this.config.activeBook
                        );
                      obj[key] = await getQuestionList(
                        [],
                        testData[catalog][page][key],
                        this.config.activeBook
                      );
                    }
                    this.questionDataMap[page] = obj;
                  }
@@ -638,7 +635,10 @@
              // 高亮行
              setTimeout(() => {
                // 获取页面所有text节点
                const pageTextList = document.createTreeWalker(target, NodeFilter.SHOW_TEXT);
                const pageTextList = document.createTreeWalker(
                  target,
                  NodeFilter.SHOW_TEXT
                );
                // 匹配关键字
                const allPageTextNodes = [];
                let currentNode = pageTextList.nextNode();
@@ -814,7 +814,7 @@
          propsData: {
            showPageList: [],
            questionData: {},
            isSearch: true
            isSearch: true,
          },
        });
        pageExample.$mount(
@@ -846,7 +846,7 @@
              propsData: {
                showPageList: [pageNum],
                questionData: {},
                isSearch: true
                isSearch: true,
              },
            });
            pageExample.$mount(
src/books/sportsAndHealth/view/components/testDynaicTable.vue
@@ -114,22 +114,11 @@
        </div>
      </div>
    </div>
    <!-- <div class="page-box" page="226">
      <div v-if="showPageList.indexOf(226)>-1">
        <div class="bodystyle">
          <pdfView :md5="md5"></pdfView>
        </div>
      </div>
    </div> -->
  </div>
</template>
<script>
// import pdfView from '@/components/pdfview'
export default {
  name: "testD",
  // components:{
  //   pdfView
  // },
  props: {
    showPageList: {
      type: Array,
@@ -138,10 +127,12 @@
      type: Object,
    },
  },
  data(){
  methods: {},
  data() {
    return {
      md5:'54741d14a21eb47b2ed06a2231271cd5'
    }
  }
      md5: "54741d14a21eb47b2ed06a2231271cd5",
      dialogVisible: true,
    };
  },
};
</script>
src/books/sportsAndHealth/view/components/testPp.vue
@@ -1456,12 +1456,31 @@
        </div>
      </div>
    </div>
    <div>
      <el-dialog
        size="small"
        :title="pdfTitle"
        :visible.sync="dialogVisible"
        width="60vw"
        :before-close="handleClose"
        append-to-body
        class="custom-dialog"
      >
        <div class="pdfModal" v-if="dialogVisible">
          <preView :isClear="dialogVisible" :md5="p_md5"></preView>
        </div>
      </el-dialog>
    </div>
  </div>
</template>
<script>
import preView from "@/components/pdfview";
import { getResourcePath } from "@/assets/methods/resources";
export default {
  name: "testPp",
  components: {
    preView,
  },
  props: {
    showPageList: {
      type: Array,
@@ -1476,27 +1495,75 @@
  },
  data() {
    return {
      pdfTitle: "",
      p_md5: "",
      dialogVisible: false,
      isShowXyx02: false,
      pingpang: require("../../image/pdf.png"),
      chapter002: {
        isShowXyx01: true,
        textBybItem1: "",
        pdfMd5: {
          1: "54741d14a21eb47b2ed06a2231271cd5",
          2: "1b7ecc924bfab900ec10f0ed4bb2466b",
          3: "f1597b91fb3110eb6fd59c84f5ddbfd1",
          4: "515f3dd2554dbdea779c59800a8da6b2",
          5: "b32afdfb8555ad8db1aa1fd95750369f",
          6: "57481cd4e7e7ce535eb6585d375e317e",
          7: "878a8bbb91f093107cae210ade9a387e",
          8: "e242f94d2bdc54de7b5340d452256515",
          9: "1ce6dc7953b1783de746e0de672ffbe4",
          10: "030b943ad33a4c0f31524f0f1ec9c14f",
          11: "2a458d11dc021318e2d3aa4f92cf3e36",
          12: "81957321d71fd270f67fe74f7ef2b9e8",
          13: "5f675eff789c96ce8a6cf80679c8a992",
          14: "02236dec8a8e87176b1df2435b82fb87",
          15: "fa38047ab9eed59f3296940778cc6cfd",
          1: {
            md5: "54741d14a21eb47b2ed06a2231271cd5",
            name: "1 乒乓球的常用术语(一)",
          },
          2: {
            md5: "1b7ecc924bfab900ec10f0ed4bb2466b",
            name: "2 乒乓球的常用术语(二)",
          },
          3: {
            md5: "f1597b91fb3110eb6fd59c84f5ddbfd1",
            name: "3 模块一(一)单项技术学练 平击发球",
          },
          4: {
            md5: "515f3dd2554dbdea779c59800a8da6b2",
            name: "4 模块一(二)基本战术学练 接平击球抢攻",
          },
          5: {
            md5: "b32afdfb8555ad8db1aa1fd95750369f",
            name: "5 模块一(三)组合技能练习 推挡+侧身攻",
          },
          6: {
            md5: "57481cd4e7e7ce535eb6585d375e317e",
            name: "6 模块二(一)单项技术学练 正手快带",
          },
          7: {
            md5: "878a8bbb91f093107cae210ade9a387e",
            name: "7 模块二(一)单项技术学练 转与不转球发球",
          },
          8: {
            md5: "e242f94d2bdc54de7b5340d452256515",
            name: "8 模块二(二)基本战术学练 发转与不转球抢攻",
          },
          9: {
            md5: "1ce6dc7953b1783de746e0de672ffbe4",
            name: "9 模块二(三)组合技能练习 左推+右攻",
          },
          10: {
            md5: "030b943ad33a4c0f31524f0f1ec9c14f",
            name: "10 模块三(一)单项技术学练 弧圈球",
          },
          11: {
            md5: "2a458d11dc021318e2d3aa4f92cf3e36",
            name: "11 模块三(一)单项技术学练 快搓",
          },
          12: {
            md5: "81957321d71fd270f67fe74f7ef2b9e8",
            name: "12 模块三(一)单项技术学练 反手快拨",
          },
          13: {
            md5: "5f675eff789c96ce8a6cf80679c8a992",
            name: "13 模块三(二)基本战术学练 搓攻战术",
          },
          14: {
            md5: "02236dec8a8e87176b1df2435b82fb87",
            name: "14 模块三(三)组合技能练习 推挡+侧身攻",
          },
          15: {
            md5: "fa38047ab9eed59f3296940778cc6cfd",
            name: "15 拓展资料:乒乓球裁判法",
          },
        },
        videoMd5: {
          v1: { md5: "bfbb956d884e0a11ba6368846176657d", name: "1核心技术" },
@@ -1617,9 +1684,14 @@
    }
  },
  methods: {
    async toUrl(val) {
    handleClose(done) {
      done();
    },
    toUrl(val) {
      if (val) {
        window.open(await getResourcePath(this.chapter002.pdfMd5[val]));
        this.dialogVisible = true;
        this.p_md5 = this.chapter002.pdfMd5[val].md5;
        this.pdfTitle = this.chapter002.pdfMd5[val].name;
      }
    },
    async getVideo(md5, val) {
src/components/examinations/index.vue
@@ -68,7 +68,7 @@
                  v-for="(itemText, indexText) in value.stem"
                  :key="indexText"
                >
                  <span v-if="typeof itemText == 'string'">{{ itemText }}</span>
                  <span v-if="typeof itemText == 'string'" v-html="itemText" ></span>
                  <!-- &nbsp; -->
                  <el-input
                    v-else
src/components/pdfview/index.vue
@@ -1,16 +1,31 @@
<template>
  <div class="imgbox">
    <img
      ref="image"
      :onLoad="initFun"
      :onDragStart="dragStart"
      :onWheel="handleScroll"
      :src="currentPageSrc"
      alt=""
    />
  <div class="preview" v-if="this.preViewMd5">
    <div id="imageParent" class="imageBox"></div>
    <div class="bottom_tool">
      <svg
        @click="downloadPdf"
        t="1718251204993"
        class="icon"
        viewBox="0 0 1024 1024"
        version="1.1"
        xmlns="http://www.w3.org/2000/svg"
        p-id="4418"
        xmlns:xlink="http://www.w3.org/1999/xlink"
        width="25"
        height="25"
      >
        <path
          d="M557 564.974l153.188-181.04c16.054-18.972 44.448-21.34 63.42-5.286 18.972 16.054 21.338 44.448 5.284 63.42L550.56 711.92a44.982 44.982 0 0 1-8.95 10.254 44.872 44.872 0 0 1-15.082 8.432A44.944 44.944 0 0 1 512 733c-16.264 0-30.512-8.628-38.42-21.556L245.65 442.068c-16.052-18.972-13.686-47.366 5.286-63.42 18.972-16.052 47.366-13.686 63.42 5.286l152.646 180.4V157c0-24.852 20.148-45 45-45s45 20.148 45 45v407.974zM823 630c0-24.852 20.148-45 45-45s45 20.148 45 45v238c0 24.87-20.176 45.026-45.046 45l-710-0.726c-24.834-0.026-44.954-20.166-44.954-45V630c0-24.852 20.148-45 45-45s45 20.148 45 45v192.32l620 0.634V630z"
          p-id="4419"
        ></path>
      </svg>
    </div>
  </div>
</template>
<script>
import Viewer from "viewerjs";
import "viewerjs/dist/viewer.css";
import { getResourcePath } from "@/assets/methods/resources";
export default {
  name: "pdf_view",
  props: {
@@ -20,126 +35,163 @@
    title: {
      type: String,
    },
    isClear: {
      type: Boolean,
      default: false,
    },
  },
  data() {
    return {
      currentPageSrc: "",
      fileLoading: false,
      visible: true,
      close: null,
      currentPage: 1,
      totalPage: 1,
      rcViewerOptions: {
        // inline: true
      },
      zoom: 1,
      catalogVisible: false,
      tocData: [],
      generateList: [],
      expandedKeys: [],
      searchValue: "",
      autoExpandParent: true,
      drawerSize: "default",
      viewerCon: null,
      preViewMd5: "",
    };
  },
  watch: {
    isClear: {
      immediate: true,
      handler(val) {
        if (val == true) this.preViewMd5 = "";
      },
    },
    md5: {
      handler(newVal, oldVal) {
        if (newVal) {
          this.getFileInfo();
      immediate: true,
      handler(val) {
        if (val) {
          this.preViewMd5 = val;
          this.currentPage = 1;
          this.currentPageSrc = "";
          this.totalPage = 1;
          this.viewerCon?.destroy();
        }
      },
    },
  },
  created() {
  mounted() {
    this.scrollBottom();
    this.clearDom();
    this.getFileInfo();
  },
  methods: {
    initFun() {
      // 初始化拖拽
      let image = this.refs.image;
      let imageBox = this.refs.imageBox;
      let initLeft = imageBox.offsetWidth / 2 - image.offsetWidth / 2;
      image.style.left = initLeft + "px";
      image.style.top = 0 + "px";
      let canMove = false;
      let offsetX, offsetY, oldLeft, oldTop;
      image.onmousedown = function (e) {
        canMove = true;
        offsetX = e.x;
        offsetY = e.y;
        oldLeft = parseFloat(image.style.left.split("px")[0]);
        oldTop = parseFloat(image.style.top.split("px")[0]);
      };
      imageBox.onmousemove = function (e) {
        if (canMove == true) {
          let left = e.clientX - offsetX;
          let top = e.clientY - offsetY;
          image.style.left = oldLeft + left + "px";
          image.style.top = oldTop + top + "px";
        }
      };
      image.onmouseup = function () {
        canMove = false;
      };
      this.fileLoading = false;
    async downloadPdf() {
      window.open(await getResourcePath(this.preViewMd5));
    },
    dragStart(e) {
      if (e && e.preventDefault) {
        e.preventDefault();
      } else {
        window.event.returnValue = false;
      }
    domViewer() {
      let ele = (this.container ? this.container : document).getElementById(
        "imageParent"
      );
      this.viewerCon = new Viewer(ele, {
        inline: false,
        container: this.container
          ? this.container.querySelector("#app")
          : "body",
        navbar: true, // 显示导航栏
        toolbar: true, // 显示工具栏
        title: true, // 显示标题
      });
    },
    handleScroll(e) {
      if (e.nativeEvent.deltaY <= 0) {
        if (this.zoom < 3) {
          let newZoom = this.zoom + 0.1;
          this.zoom = newZoom;
          this.refs.image.style.height = newZoom * 100 + "%";
    clearDom() {
      let ele = (this.container ? this.container : document).getElementById(
        "imageParent"
      );
      ele.innerHtml = "";
    },
    createDom(page) {
      var that = this;
      let ele = (this.container ? this.container : document).getElementById(
        "imageParent"
      );
      const img = document.createElement("img");
      img.src = this.getPageImage(page);
      img.alt = "";
      img.style.maxWidth = "90%";
      img.style.padding = "30px 5%";
      img.className = "imgHover";
      img.onclick = () => {
        that.viewerCon?.destroy();
        that.domViewer();
      };
      ele.appendChild(img);
    },
    scrollBottom() {
      var that = this;
      var ele = (this.container ? this.container : document).getElementById(
        "imageParent"
      );
      ele.addEventListener("scroll", function () {
        // 计算滚动条距离底部的位置
        const scrollBottom =
          ele.scrollHeight - ele.scrollTop - ele.clientHeight;
        if (scrollBottom <= 10) {
          that.currentPage++;
          if (that.currentPage <= that.totalPage) {
            that.createDom(that.currentPage, ele);
          }
        }
      } else {
        if (this.zoom > 0.5) {
          let newZoom = this.zoom - 0.1;
          this.zoom = newZoom;
          this.refs.image.style.height = newZoom * 100 + "%";
        }
      }
      });
    },
    getFileInfo() {
      // 获取目录
      this.MG.file
        .getPdfInfo({ md5: this.md5 })
        .getPdfInfo({ md5: this.preViewMd5 })
        .then((res) => {
          this.totalPage = res.totalPages;
          this.getPageImage(this.currentPage);
          this.createDom(this.currentPage);
        })
        .catch((err) => {
          this.totalPage = 1;
          this.createDom(this.currentPage);
          console.error(err);
        });
    },
    getPageImage(page) {
      const ctx = process.env.VUE_APP_API_URL;
      this.fileLoading = true;
      this.currentPageSrc =
      return (
        ctx +
        "/file/GetPdfPageImage" +
        "?md5=" +
        this.md5 +
        this.preViewMd5 +
        "&index=" +
        page +
        "&dpi=150";
        "&dpi=200"
      );
    },
  },
};
</script>
<style scoped lang="less">
.imgbox {
.preview {
  width: 100%;
  height: 100%;
  background-color: aquamarine;
  img {
    width: 100%;
  .imageBox {
    height: calc(100% - 30px);
    overflow-x: hidden;
    overflow-y: auto;
    background: #ccc;
    box-sizing: border-box;
  }
  .imageBox:hover {
    cursor: zoom-in !important;
  }
  .bottom_tool {
    height: 30px;
    background-color: rgba(0, 0, 0, 0.8);
    display: flex;
    justify-content: flex-end;
    align-items: center;
    svg {
      margin-right: 10px;
      fill: #999;
    }
    svg:hover {
      fill: #fff;
      cursor: pointer;
    }
  }
}
</style>
vue.config.js
@@ -1,6 +1,9 @@
const { defineConfig } = require("@vue/cli-service");
const webpack = require("webpack");
// 获取所有书籍列表
const bookList = process.env.VUE_APP_BOOK_LIST ? process.env.VUE_APP_BOOK_LIST.split("/") : [];
module.exports = defineConfig({
  publicPath: process.env.PUBLIC_PATH,
  publicPath: process.env.VUE_APP_PUBLIC_PATH,
  transpileDependencies: true,
  lintOnSave: false,
  // devServer: {
@@ -19,7 +22,26 @@
      library: `app-content`,
      libraryTarget: "umd",
      chunkLoadingGlobal: `webpackJsonp_app-content`
    }
    },
    plugins: [
      new webpack.IgnorePlugin({
        checkResource(resource) {
          if (process.env.VUE_APP_ENV == "product") {
            // 编译和打包过滤
            for (let i = 0; i < bookList.length; i++) {
              const bookName = bookList[i];
              if (bookName != process.env.VUE_APP_BOOK_ID) {
                // 过滤不需要的模块
                if (resource.indexOf(bookName) > -1) {
                  return true;
                }
              }
            }
          }
          return false;
        }
      })
    ]
  },
  chainWebpack: (config) => {
    config.module