From 25dab3bdfa379f110213e0cc185308c21fa3c2e0 Mon Sep 17 00:00:00 2001
From: YM <479443481@qq.com>
Date: 星期二, 28 五月 2024 17:05:03 +0800
Subject: [PATCH] 增加试读控制

---
 src/App.vue                                  |   14 ++++---
 src/books/childHealth/view/content/index.vue |   51 ++++++++++++++-----------
 2 files changed, 36 insertions(+), 29 deletions(-)

diff --git a/src/App.vue b/src/App.vue
index 7c8bf4e..ad0fac7 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -19,11 +19,11 @@
     childHealth,
     lifeCare,
     embedded,
-    english,
+    english
   },
   data() {
     return {
-      activeBook: {},
+      activeBook: {}
     };
   },
   async created() {
@@ -50,20 +50,23 @@
             (this.$store.state.qiankun, this.$store.state.qiankun.getBookConfig)
           ) {
             this.$store.state.qiankun.getBookConfig({
-              bookConfig: this.activeBook,
+              bookConfig: this.activeBook
             });
           }
-        },
+        }
       });
     } else {
       this.activeBook = await this.config.getBookConfig(
         // childHealth
         this.config.resourceCtx + "childHealth"
       );
+      // 娴嬭瘯璇曡30椤�
+      // this.activeBook.tryPageCount = 30;
+
       this.config.activeBook = this.activeBook;
       this.config.goodsStore = this.activeBook.storeRefcode;
     }
-  },
+  }
 };
 </script>
 
@@ -106,5 +109,4 @@
   border-bottom: 2px solid;
   cursor: pointer;
 }
-
 </style>
diff --git a/src/books/childHealth/view/content/index.vue b/src/books/childHealth/view/content/index.vue
index cd683ac..63b78b9 100644
--- a/src/books/childHealth/view/content/index.vue
+++ b/src/books/childHealth/view/content/index.vue
@@ -102,13 +102,13 @@
       observer: null,
       loadPageObserver: null,
       loadPageList: [],
-      questionData: {},
+      questionData: {}
     };
   },
   provide() {
     return {
-      changeQuestionData:this.changeQuestionData
-    }
+      changeQuestionData: this.changeQuestionData
+    };
   },
   watch: {
     showCatalogList: {
@@ -119,7 +119,7 @@
         ) {
           // 璋冪敤鐖跺眰鏂规硶
           this.$store.state.qiankun.catalogChange({
-            showCatalogList: newVal,
+            showCatalogList: newVal
           });
         }
         // 鍚姩椤电爜瑙傚療
@@ -127,8 +127,8 @@
           this.initObservation();
           this.initThemeColor();
         }, 500);
-      },
-    },
+      }
+    }
   },
   mounted() {
     // 榛樿鍔犺浇绔犺妭
@@ -153,7 +153,7 @@
         // 鍒犻櫎绗旇銆侀珮浜�佸垝绾�
         delSign: (data) => {
           this.delSign(data);
-        },
+        }
       });
     }
 
@@ -162,13 +162,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锛岃〃绀哄綋鐩爣鍏冪礌涓�鍗婃垨鏇村鏄剧ず鍦ㄨ绐椾腑鏃惰Е鍙戝洖璋冨嚱鏁般��
     });
 
     // 鍚姩椤电爜瑙傚療
@@ -252,7 +252,7 @@
           this.showCatalogList = [
             this.catalogLength - 2,
             this.catalogLength - 1,
-            this.catalogLength,
+            this.catalogLength
           ];
         } else {
           this.showCatalogList = [catalog - 1, catalog, catalog + 1];
@@ -341,6 +341,16 @@
         this.container ? this.container : document
       ).querySelectorAll(".page-box");
       sections.forEach((section) => {
+        if (this.config.activeBook && this.config.activeBook.tryPageCount) {
+          const page = section.getAttribute("page");
+          if (Number(page) > this.config.activeBook.tryPageCount) {
+            let chapterDom = this.getParentWithClass(section, "chapter");
+            const chapterNum = chapterDom.getAttribute("num");
+            this.catalogLength = Number(chapterNum) - 1;
+            section.remove();
+            return false;
+          }
+        }
         //observer 瑙傚療姣忎釜鍏冪礌锛屼互渚垮湪瀹冧滑杩涘叆鎴栫寮�瑙嗙獥鏃惰Е鍙戝洖璋冨嚱鏁般��
         const isObserver = section.getAttribute("observer");
         const isLoadObserver = section.getAttribute("loadObserver");
@@ -454,12 +464,12 @@
             "chapter"
           );
           const catalog = catalogDom.getAttribute("num");
-          console.log("page", page, catalog);
+          console.log(page,"page",catalog,"catalog");
           // 杩斿洖椤电爜鍜岀珷鑺備俊鎭�
           if (this.$store.state.qiankun && this.$store.state.qiankun.pageChange)
             this.$store.state.qiankun.pageChange({
               page: page,
-              catalog: catalog,
+              catalog: catalog
             });
           // const sections = Array.from(document.querySelectorAll(".section"));
           //sections锛氳幏鍙栨墍鏈夊叿鏈� .section 绫诲悕鐨勫厓绱狅紝骞惰浆鎹负鏁扮粍銆�
@@ -482,19 +492,16 @@
             const catalog = catalogDom.getAttribute("num");
             if (!this.questionData[page]) {
               if (testData && testData[catalog]) {
-                console.log(testData[catalog]);
                 if (testData[catalog][page]) {
-                  console.log(testData[catalog][page]);
                   if (Array.isArray(testData[catalog][page])) {
                     this.questionData[page] = await getQuestionList(
                       [],
                       testData[catalog][page],
                       this.config.activeBook
-                    ) 
+                    );
                   } else {
                     const obj = {};
                     for (let key in testData[catalog][page]) {
-                      console.log("key", key, testData[catalog][page][key]);
                       obj[key] = await getQuestionList(
                         [],
                         testData[catalog][page][key],
@@ -507,7 +514,6 @@
               }
             }
             this.loadPageList.push(Number(page));
-            console.log(this.loadPageList, "this.loadPageList", catalog);
             if (this.loadPageList.length > 5) {
               // 瓒呰繃5椤�
               this.loadPageList.shift();
@@ -516,10 +522,9 @@
         }
       });
     },
-    changeQuestionData(page,data) {
-      console.log('鍙樺寲',page,data);
-      this.$props.questionData[page] = data
-    },
+    changeQuestionData(page, data) {
+      this.$props.questionData[page] = data;
+    }
   },
   components: {
     pageHeader,
@@ -535,8 +540,8 @@
     chapterTen,
     chapterEleven,
     chapterTwelve,
-    chapterThirteen,
-  },
+    chapterThirteen
+  }
 };
 </script>
 

--
Gitblit v1.9.1