YM
2024-05-13 1db8ceb3c8b794df374104834221bdbb84260e23
src/books/childHealth/view/index.vue
@@ -15,17 +15,18 @@
  components: {
    pageHeader,
    pageContent,
    examinations,
    examinations
  },
  data() {
    return {
      type: "option",
      idPathList: [],
      cardList: [],
      cardList: []
    };
  },
  mounted() {
    this.getBookInfo();
    console.log(this.$store.state.qiankun, "this.$store.state.qiankun");
  },
  methods: {
    getBookInfo() {
@@ -35,10 +36,10 @@
        productId: this.config.bookId,
        favoriteTypes: "FavoriteBookCity",
        itemFields: {
          "SysType=": "CmsFolder",
          "SysType=": "CmsFolder"
        },
        coverSize: {
          height: 300,
          height: 300
        },
        fields: {
          seriesName: [],
@@ -60,8 +61,8 @@
          pdf: [],
          protectedEpub: [],
          probationPage: [], //pdf试读页数
          freeEpubPage: [], //epub试读百分比
        },
          freeEpubPage: [] //epub试读百分比
        }
      };
      this.MG.store.getProductDetail(query).then((res) => {
        console.log("图书信息", res.datas.cmsDatas[0].datas);
@@ -88,12 +89,12 @@
          isDownload: [],
          jsek_resourceBrief: [],
          jsek_link: [],
          jsek_questionBank: [],
          jsek_questionBank: []
        },
        pading: {
          start: 0,
          size: 999,
        },
          size: 999
        }
      };
      this.MG.store
        .getProductDetail(query)
@@ -127,8 +128,8 @@
        cmsPath: data.productLinkPath,
        pading: {
          start: 0,
          size: 999,
        },
          size: 999
        }
      };
      this.MG.store.getProductDetail(query).then((res) => {
        console.log("题目", res.datas.cmsDatas[0].datas);
@@ -146,7 +147,7 @@
        pathList.push({
          path: pathitem.productLinkPath,
          catalogName: pathitem.name,
          infoList: [],
          infoList: []
        });
        this.$data.cardList = pathList;
        // 获取题目
@@ -164,12 +165,12 @@
            Embedded_QuestionBank_StemStyle: [],
            Embedded_QuestionBank_OptionStyle: [],
            Embedded_QuestionBank_KnowledgePoint: [],
            Embedded_QuestionBank_Difficulty: [],
            Embedded_QuestionBank_Difficulty: []
          },
          pading: {
            start: 0,
            size: 999,
          },
            size: 999
          }
        };
        this.MG.store.getProductDetail(query).then((res) => {
          let oldList;
@@ -179,7 +180,7 @@
              (item) => item.path == pathitem.productLinkPath
            ).infoList;
            this.setData({
              submitStatus: true,
              submitStatus: true
            });
          }
          res.datas.cmsDatas[0].datas.forEach((item, index) => {
@@ -219,7 +220,7 @@
              isRight: oldObj ? oldObj.isRight : null,
              isComplete: oldObj ? oldObj.isComplete : false,
              isCollect: false,
              isUnfold: "", // 控制解析的折叠面板是否展开
              isUnfold: "" // 控制解析的折叠面板是否展开
            };
            // 多选和填空答案肯为数组,要转换JSON格式
            if (
@@ -240,7 +241,7 @@
                if (item == "input") {
                  questionObj.stem[i] = {
                    num: index,
                    data: "input",
                    data: "input"
                  };
                  if (!oldObj) questionObj.userAnswer[index] = "";
                  index++;
@@ -378,23 +379,41 @@
    },
    handleMouseUp(e) {
      const txt = window.getSelection()?.toString();
      const node = window.getSelection();
      let html = node.anchorNode.parentNode.parentNode.parentNode;
      let nextHtml = html.firstChild.innerHTML;
      let pageHtml = this.getParentWithClass(node.anchorNode,'page-box')
      if (txt) {
        console.log(pageHtml);
      const selection = window.getSelection();
      if (selection.type != "none") {
        let node = selection.anchorNode.parentNode.parentNode.parentNode;
        let nextHtml = node.firstChild.innerHTML;
        let pageHtml = this.getParentWithClass(
          selection.anchorNode,
          "page-box"
        );
        if (txt && node) {
          const page = node.getAttribute("page");
          // 监听选中文本事件,并触发父层方法
          if (this.$store.state.qiankun.windowSelection)
            console.log(
              {
                txt,
                selection,
                node,
                page,
                x: e.x,
                y: e.y
              },
              "sendData"
            );
          this.$store.state.qiankun.windowSelection({
            txt,
            selection,
            node,
            page,
            x: e.x,
            y: e.y
          });
        }
      }
      if (html) {
        const page = html.getAttribute("page");
        console.log("page", page,this.$actions);
        this.$actions.setGlobalState({
          aa:page
        })
      }
    },
  },
    }
  }
};
</script>