1
YM
2024-05-15 00c39bac238dcd23346f2f47462f3ac6e81f64a3
src/books/childHealth/view/index.vue
@@ -1,5 +1,5 @@
<template>
  <div class="temp-book" @mouseup="handleMouseUp" @mousedown="handleMouseDown" @mousemove="handleMousemove">
  <div class="temp-book" @mouseup="handleMouseUp">
    <pageContent></pageContent>
  </div>
</template>
@@ -7,13 +7,13 @@
<script>
import examinations from "./components/examinations/index.vue";
import pageContent from "./content/index.vue";
import testData from '../assets/examinationList'
import getQuestionData from '@/assets/methods/examination'
import testData from "../assets/examinationList";
import getQuestionData from "@/assets/methods/examination";
export default {
  name: "child-health",
  components: {
    pageContent,
    examinations,
    examinations
  },
  data() {
    return {
@@ -21,13 +21,11 @@
      type: "option",
      idPathList: [],
      cardList: [],
      isMouseDown: false,
      move: false,
      isMouseDown: false
    };
  },
  mounted() {
    this.getBookInfo();
    console.log(this.$store.state.qiankun, "this.$store.state.qiankun");
  },
  methods: {
    getBookInfo() {
@@ -37,10 +35,10 @@
        productId: this.config.bookId,
        favoriteTypes: "FavoriteBookCity",
        itemFields: {
          "SysType=": "CmsFolder",
          "SysType=": "CmsFolder"
        },
        coverSize: {
          height: 300,
          height: 300
        },
        fields: {
          seriesName: [],
@@ -62,20 +60,23 @@
          pdf: [],
          protectedEpub: [],
          probationPage: [], //pdf试读页数
          freeEpubPage: [], //epub试读百分比
        },
          freeEpubPage: [] //epub试读百分比
        }
      };
      this.MG.store.getProductDetail(query).then((res) => {
        console.log("图书信息",res.datas,testData); 
        this.$data.bookData =  res.datas.cmsDatas[0].datas
        const questiondata = testData
        this.$data.bookData = res.datas.cmsDatas[0].datas;
        const questiondata = testData;
        for(let key in testData) {
          for(let tkey in testData[key]) {
            console.log(testData[key][tkey]);
            questiondata[key][tkey]  = getQuestionData(res.datas.rootCmsItemId,testData[key][tkey])
            questiondata[key][tkey] = getQuestionData(
              res.datas.rootCmsItemId,
              testData[key][tkey]
            );
          }
        }
        this.$store.commit('setQuestionData',questiondata)
        this.$store.commit("setQuestionData", questiondata);
        console.log(this.$store);
        // console.log(questiondata);
      });
@@ -89,10 +90,9 @@
      }
    },
    handleMouseUp(e) {
      if (this.$data.move) {
        const txt = window.getSelection()?.toString();
        const selection = window.getSelection();
        if (selection.type != "none") {
      const selection = (this.container ? this.container : window).getSelection();
      const txt = selection.toString();
      if (selection.type != "none" && txt) {
          let node = selection.anchorNode.parentNode;
          let pageHtml = this.getParentWithClass(
            selection.anchorNode,
@@ -104,67 +104,34 @@
          );
          let chapterNum;
          if (chapterDom) chapterNum = chapterDom.getAttribute("num");
          if (txt && pageHtml) {
        if (pageHtml) {
            const page = pageHtml.getAttribute("page");
            console.log(
              {
          // 监听选中文本事件,并触发父层方法
          if (this.$store.state.qiankun.windowSelection) {
            this.$store.state.qiankun.windowSelection({
              chapterNum,
              txt,
              page,
              x: e.x,
              y: e.y
            });
          }
          console.log("选中的文字", {
                chapterNum,
                txt,
                selection,
                node,
                page,
                x: e.x,
                y: e.y,
              },
              "sendData"
            );
            // 监听选中文本事件,并触发父层方法
            console.log("第二处判断", this.$store.state.qiankun);
            if (this.$store.state.qiankun.windowSelection) {
              this.$store.state.qiankun.windowSelection({
                txt,
                selection,
                node,
                page,
                x: e.x,
                y: e.y,
            y: e.y
              });
            }
          }
          this.$data.isMouseDown = false;
        }
      }
      this.$data.move = false
    },
    handleMouseDown() {
      this.$data.isMouseDown = true;
    },
    handleMousemove() {
      if (this.$data.isMouseDown) {
        this.$data.move = true;
      }
    },
    // handleMouseUp(e) {
    //   if (move.value) {
    //     const txt = window.getSelection()?.toString();
    //     selectText.value = txt;
    //     const node = window.getSelection();
    //     let html = node.anchorNode.parentNode.parentNode;
    //     dialogToolData.chapter = html.firstChild.innerHTML;
    //     if (txt) {
    //       showToolBox.value = true;
    //       dialogToolData.top = e.y;
    //       dialogToolData.left = e.x;
    //     }
    //     isMouseDown.value = false;
    //   }
    //   move.value = false;
    // },
  },
};
</script>
<style lang="less" scoped></style>
../assets/examinationList.js../assets/examinationList.js
<style lang="less" scoped>
</style>