From dc1bfd1969528b411398a1a6b9963baa0404d850 Mon Sep 17 00:00:00 2001 From: zhongshujie <2862698242@qq.com> Date: 星期六, 05 七月 2025 00:00:48 +0800 Subject: [PATCH] 1 --- src/books/toddlerGameImplementation/view/components/index.vue | 137 ++++++++++++++++++--------------------------- 1 files changed, 56 insertions(+), 81 deletions(-) diff --git a/src/books/toddlerGameImplementation/view/components/index.vue b/src/books/toddlerGameImplementation/view/components/index.vue index 2716ffe..f63b78e 100644 --- a/src/books/toddlerGameImplementation/view/components/index.vue +++ b/src/books/toddlerGameImplementation/view/components/index.vue @@ -3,49 +3,34 @@ <div id="searchDomBox" style="display: none"> <div id="searchContent"></div> </div> - <div - class="page-content" - :style="{ - fontSize: fontSize + 'px', - transform: `scale(${pageZoom})`, - transformOrigin: 'center top', - }" - > - <pageHeader - v-if="showCatalogList.indexOf(1) > -1" - :showPageList="loadPageList" - ></pageHeader> - <chapterOne - v-if="showCatalogList.indexOf(2) > -1" - :showPageList="loadPageList" - ></chapterOne> - <chapterTwo - v-if="showCatalogList.indexOf(3) > -1" - :showPageList="loadPageList" - ></chapterTwo> - <chapterThree - v-if="showCatalogList.indexOf(4) > -1" - :showPageList="loadPageList" - ></chapterThree> - <chapterFour - v-if="showCatalogList.indexOf(5) > -1" - :showPageList="loadPageList" - ></chapterFour> - <chapterFive - v-if="showCatalogList.indexOf(6) > -1" - :showPageList="loadPageList" - ></chapterFive> - <chapterSix v-if="showCatalogList.indexOf(7) > -1" - :showPageList="loadPageList" > + <div class="page-content" :style="{ + fontSize: fontSize + 'px', + transform: `scale(${pageZoom})`, + transformOrigin: 'center top', + }"> + <pageHeader v-if="showCatalogList.indexOf(1) > -1" :showPageList="loadPageList"></pageHeader> + <chapterOne v-if="showCatalogList.indexOf(2) > -1" :showPageList="loadPageList" + :interfaceQuestion="questionDataMap"></chapterOne> + <chapterTwo v-if="showCatalogList.indexOf(3) > -1" :showPageList="loadPageList" + :interfaceQuestion="questionDataMap"></chapterTwo> + <chapterThree v-if="showCatalogList.indexOf(4) > -1" :showPageList="loadPageList" + :interfaceQuestion="questionDataMap"></chapterThree> + <chapterFour v-if="showCatalogList.indexOf(5) > -1" :showPageList="loadPageList" + :interfaceQuestion="questionDataMap"></chapterFour> + <chapterFive v-if="showCatalogList.indexOf(6) > -1" :showPageList="loadPageList" + :interfaceQuestion="questionDataMap"></chapterFive> + <chapterSix v-if="showCatalogList.indexOf(7) > -1" :showPageList="loadPageList" + :interfaceQuestion="questionDataMap"> </chapterSix> - <chapterSeven v-if="showCatalogList.indexOf(8) > -1" - :showPageList="loadPageList" > + <chapterSeven v-if="showCatalogList.indexOf(8) > -1" :showPageList="loadPageList" + :interfaceQuestion="questionDataMap"> </chapterSeven> </div> </div> </template> <script> +import Vue from "vue"; import pageHeader from "./header.vue"; import chapterOne from "./chapter001.vue"; import chapterTwo from "./chapter002.vue"; @@ -55,6 +40,8 @@ import chapterSix from "./chapter006.vue"; import chapterSeven from "./chapter007.vue"; import NoteIcon from "@/assets/images/biji.png"; +import getQuestionList from "@/assets/methods/examination"; +import testData from "../../assets/examinationList"; import _ from "lodash"; import Swiper from "swiper/bundle"; import "swiper/swiper-bundle.css"; @@ -192,20 +179,7 @@ // 娴嬭瘯椤甸潰璺宠浆 setTimeout(() => { - this.gotoPage(8, 183); - // setTimeout(() => { - // this.renderSign("Highlight", { - // id: "2ACA9359", - // txt: "棰樹竴瀛︿範涓婚涓� 杩愬姩", - // page: "10", - // type: "Highlight", - // color: "#F5E12A" - // }); - // setTimeout(() => { - // this.delSign({ - // ids: ["2ACA9359"] - // }); - // }, 2000); + this.gotoPage(4, 59); }, 500); // const pageDom = (this.container ? this.container : document) @@ -482,8 +456,8 @@ page && pageThemeColor && pageThemeColor[page] ? pageThemeColor[page] : chapterNum && chapterThemeColor && chapterThemeColor[chapterNum] - ? chapterThemeColor[chapterNum] - : bookThemeColor; + ? chapterThemeColor[chapterNum] + : bookThemeColor; if (themeColor) { domItem.style.color = themeColor; } @@ -500,8 +474,8 @@ page && pageThemeColor && pageThemeColor[page] ? pageThemeColor[page] : chapterNum && chapterThemeColor && chapterThemeColor[chapterNum] - ? chapterThemeColor[chapterNum] - : bookThemeColor; + ? chapterThemeColor[chapterNum] + : bookThemeColor; if (themeColor) { domItem.style.backgroundColor = themeColor; } @@ -518,8 +492,8 @@ page && pageThemeColor && pageThemeColor[page] ? pageThemeColor[page] : chapterNum && chapterThemeColor && chapterThemeColor[chapterNum] - ? chapterThemeColor[chapterNum] - : bookThemeColor; + ? chapterThemeColor[chapterNum] + : bookThemeColor; if (themeColor) { domItem.style.borderColor = themeColor; } @@ -564,6 +538,7 @@ } }); }, + loadPageCallback(entries, observer) { entries.forEach(async (entry) => { if (entry.isIntersecting) { @@ -577,30 +552,30 @@ // 娣诲姞椤电爜 this.loadPageList.push(Number(page)); const catalog = catalogDom.getAttribute("num"); - // if (!this.questionDataMap[page]) { - // 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 - // ); - // } else { - // const obj = {}; - // for (let key in testData[catalog][page]) { - // obj[key] = await getQuestionList( - // [], - // testData[catalog][page][key], - // this.config.activeBook - // ); - // } - // this.questionDataMap[page] = obj; - // } - // console.log("棰樼洰", this.questionDataMap); - // } - // } - // } + if (!this.questionDataMap[page]) { + if (testData && testData[catalog]) { + if (testData[catalog][page]) { + if (Array.isArray(testData[catalog][page])) { + Vue.set(this.questionDataMap, page, await getQuestionList( + page, + testData[catalog][page], + this.config.activeBook + )); + console.log("棰樼洰", this.questionDataMap); + } else { + const obj = {}; + for (let key in testData[catalog][page]) { + obj[key] = await getQuestionList( + [], + testData[catalog][page][key], + this.config.activeBook + ); + } + Vue.set(this.questionDataMap, page, obj); + } + } + } + } // 娓叉煋杩欎竴椤电殑鏍囪 for (const key in this.renderSignMap) { if (this.renderSignMap[key][page]) { @@ -850,7 +825,7 @@ // 璁板綍楂樹寒淇℃伅 this.highlightData = data; // 璺宠浆 - this.gotoPage(data.catalog, data.page, () => {}); + this.gotoPage(data.catalog, data.page, () => { }); }, // 椤甸潰鍚戜笅婊氬姩锛岄煶棰戝皬绐楁挱鏀惧姛鑳� getAduio() { -- Gitblit v1.9.1