From dcd5065a6ed1b75b0e3c1491d267ab73b4997f11 Mon Sep 17 00:00:00 2001
From: yiming <m13691596795@163.com>
Date: 星期四, 06 六月 2024 11:38:59 +0800
Subject: [PATCH] 数字教材详情

---
 pages/digitalTextbooks/index.wxml                                  |  102 ++-
 pages/home/home.js                                                 |    1 
 pages/digitalTextbooks/digitalTextbooksDetails/index.json          |    8 
 pages/digitalTextbooks/index.wxss                                  |    8 
 pages/digitalTextbooks/index.skeleton.wxml                         |  146 +++++
 pages/digitalTextbooks/index.skeleton.wxss                         |  142 +++++
 services/home/home.js                                              |   12 
 pages/digitalTextbooks/index.js                                    |   16 
 pages/digitalTextbooks/digitalTextbooksDetails/index.skeleton.wxss |  129 ++++
 pages/digitalTextbooks/digitalTextbooksDetails/index.skeleton.wxml |  187 +++++++
 pages/digitalTextbooks/digitalTextbooksDetails/index.wxml          |  147 +++++
 pages/digitalTextbooks/digitalTextbooksDetails/index.wxss          |  262 ++++++++++
 pages/digitalTextbooks/digitalTextbooksDetails/index.js            |  363 +++++++++++++
 13 files changed, 1,463 insertions(+), 60 deletions(-)

diff --git a/pages/digitalTextbooks/digitalTextbooksDetails/index.js b/pages/digitalTextbooks/digitalTextbooksDetails/index.js
index 1e62a7d..b31a042 100644
--- a/pages/digitalTextbooks/digitalTextbooksDetails/index.js
+++ b/pages/digitalTextbooks/digitalTextbooksDetails/index.js
@@ -1,11 +1,23 @@
 // pages/digitalTextbooks/digitalTextbooksDetails/index.js
+import Toast from "tdesign-miniprogram/toast";
+const app = getApp()
 Page({
 
   /**
    * 椤甸潰鐨勫垵濮嬫暟鎹�
    */
   data: {
-
+    digitalTextId: '',
+    digitalsData: {},
+    isFavourite: true,
+    richStyle: 'font-size: 28rpx;color: #333; line-height: 48rpx;text-align: justify;margin: 20rpx; ',
+    briefIconClick: {
+      name: "/static/images/bookService/detail/tushujianjie-click.png",
+    },
+    relatedBookData: [],
+    publicationDate: '',
+    isBuy: false,
+    loading: true,
   },
 
   /**
@@ -13,8 +25,60 @@
    */
   onLoad(options) {
     console.log(options.id);
-  },
+    this.setData({
+      digitalTextId: options.id
+    })
+    this.digitalTextbooksDetailsGet(this.data.digitalTextId)
 
+  },
+  // 鏍煎紡鍖栨棩鏈�
+  // 鏍煎紡鍖栨棩鏈�
+  formatDate(dateString) {
+    if (!dateString) {
+      return "";
+    }
+    const match = dateString.match(
+      /^(\d{4})\/(\d{1,2})\/(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/
+    );
+    if (!match) {
+      throw new Error("Invalid date format");
+    }
+
+    const [, year, month, day, hours, minutes, seconds] = match;
+    const date = new Date(
+      parseInt(year, 10),
+      parseInt(month, 10) - 1,
+      parseInt(day, 10),
+      parseInt(hours, 10),
+      parseInt(minutes, 10),
+      parseInt(seconds, 10)
+    );
+
+    if (isNaN(date.getTime())) {
+      throw new Error("Invalid date");
+    }
+
+    // 鐢变簬灏忕▼搴忕幆澧冨彲鑳戒笉鏀寔 Intl.DateTimeFormat锛屾垜浠娇鐢ㄧ畝鍖栫殑鏍煎紡鍖栨柟娉�
+    const formatted = `${year}骞�${this.formatMonth(month)}`;
+    return formatted;
+  }, // 绠�鍖栫殑鏈堜唤鏍煎紡鍖栧嚱鏁帮紝杩斿洖鏈堜唤鐨勪腑鏂囪〃杈�
+  formatMonth(month) {
+    const months = [
+      "1鏈�",
+      "2鏈�",
+      "3鏈�",
+      "4鏈�",
+      "5鏈�",
+      "6鏈�",
+      "7鏈�",
+      "8鏈�",
+      "9鏈�",
+      "10鏈�",
+      "11鏈�",
+      "12鏈�",
+    ];
+    return months[parseInt(month, 10) - 1];
+  },
   /**
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍒濇娓叉煋瀹屾垚
    */
@@ -40,7 +104,9 @@
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍗歌浇
    */
   onUnload() {
-
+    this.setData({
+      digitalsData: {}
+    })
   },
 
   /**
@@ -62,5 +128,296 @@
    */
   onShareAppMessage() {
 
+  },
+
+
+  digitalTextbooksDetailsGet(digitalId) {
+
+    let query = {
+      path: '*',
+      queryType: '*',
+      productId: digitalId,
+      storeInfo: 'jsek_digitalTextbooks',
+      coverSize: {
+        height: 300
+      },
+      fields: {
+        seriesName: [],
+        author: [],
+        isbn: [],
+        publicationDate: [],
+        bookClassification: [],
+        paperPrice: [],
+        JDLink: [],
+        tmallLink: [],
+        dangdangLink: [],
+        weidianLink: [],
+        content: [],
+        authorIntroduction: [],
+        isApplyBook: [],
+        isSell: [],
+        pdf: [],
+        protectedEpub: [],
+        probationPage: [], //pdf璇曡椤垫暟
+        freeEpubPage: [],
+        catalogue: []
+        //epub璇曡鐧惧垎姣�
+      }
+    }
+    app.MG.store.getProductDetail(query).then(res => {
+
+      // console.log(res);
+      if (res.datas.purchasedSaleMethodIdList.includes(res.datas.defaultSaleMethodId)) {
+
+        this.setData({
+          isBuy: true
+        })
+
+      } else {
+        this.setData({
+          isBuy: false
+        })
+      }
+      // res.datas.publicationDate = 
+      if (res.datas.icon == '') {
+        res.datas.icon = '/static/images/default-book-img.png'
+      }
+      this.setData({
+        publicationDate: this.formatDate(res.datas.publicationDate)
+      })
+      res.datas.price = res.datas.price.toFixed(2)
+      res.datas.isFavourite = false
+      this.setData({
+        digitalsData: res.datas
+      })
+
+      wx.setNavigationBarTitle({
+        title: res.datas.name,
+      })
+
+      this.getAboutBook(res.datas.productLinkInfo[res.datas.productLinkInfo.length - 1].LinkPath)
+
+      console.log(this.data.isBuy);
+      this.setData({
+        loading: false,
+
+      });
+    })
+  },
+  setCoolect() {
+    console.log(this.data.digitalsData.id);
+    console.log(this.data.digitalsData.isFavourite);
+    this.setData({
+      isFavourite: !this.data.isFavourite
+    })
+
+
+
+    if (this.data.digitalsData.isFavourite) {
+      app.MG.store
+        .delProductLink({
+          productIds: [this.data.digitalsData.id],
+          linkType: 'FavoriteBookCity'
+        })
+        .then(() => {
+          this.data.digitalsData.isFavourite = false
+        })
+    } else {
+      let params = {
+        productIds: [this.data.digitalsData.id],
+        linkType: 'FavoriteBookCity'
+      }
+      app.MG.store.addProductLink(params).then((res) => {
+        this.data.digitalsData.isFavourite = true
+      })
+    }
+  },
+  onTabsChange(event) {
+    console.log(`Change tab, tab-panel value is ${event.detail.value}.`);
+  },
+
+  onTabsClick(event) {
+    console.log(`Click tab, tab-panel value is ${event.detail.value}.`);
+  },
+
+  // 鑾峰彇鐩稿叧鏁欐潗
+  getAboutBook(path) {
+    let query = {
+      path,
+      queryType: '*',
+      coverSize: {
+        height: 243
+      },
+      paging: {
+        start: 0,
+        size: 99
+      },
+      fields: {
+        author: [],
+        publicationDate: []
+      }
+    }
+    app.MG.store.getProductList(query).then(res => {
+      const Arr = res.datas.filter(
+        (item) => item.id != this.data.digitalsData.id
+      );
+      let bookArr = []
+      if (Arr.length) {
+        if (Arr.length > 9) {
+          for (var i = 0; i < 9; i++) {
+            var _num = Math.floor(Math.random() * Arr.length)
+            var mm = Arr[_num]
+            Arr.splice(_num, 1)
+            bookArr.push(mm)
+          }
+        } else {
+          bookArr = Arr
+        }
+
+        bookArr.forEach(item => {
+          if (item.icon == '') {
+            item.icon = '/static/images/default-book-img.png'
+          }
+        })
+        this.setData({
+          relatedBookData: bookArr
+        })
+        console.log(this.data.relatedBookData);
+      } else {
+        this.setData({
+          relatedBookData: []
+        })
+      }
+    })
+  },
+  onCorrelationBook(e) {
+
+
+
+    const item = e.currentTarget.dataset.item
+
+    console.log(item);
+    this.digitalTextbooksDetailsGet(item.id)
+  },
+  // 鍥句功娣诲姞璐墿杞�
+  async addBookShopcCar() {
+    if (!this.data.expire) {
+      const shoppingCartGetId = [];
+      let query = {
+        start: 0,
+        size: 9999,
+        filterList: [],
+        searchList: [],
+      };
+      const res = await app.MG.store.getShoppingCartProductList(query);
+      res.datas.forEach((item) => {
+        shoppingCartGetId.push(item.saleMethod.id);
+      });
+      const determine = shoppingCartGetId.some(
+        (item) => item == this.data.digitalsData.defaultSaleMethodId
+      );
+      if (!determine) {
+        let query = {
+          requests: [{
+            saleMethodId: this.data.digitalsData.defaultSaleMethodId,
+            storeEventId: null,
+            agentCode: "鐢靛瓙涔�",
+          }, ],
+        };
+        const addRes = app.MG.store.addShoppingCart(query);
+        this.showSuccessToast();
+      } else {
+        Toast({
+          context: this,
+          selector: "#t-toast",
+          message: "璇ヤ功宸插湪璐墿杞︼紝璇峰嬁閲嶅娣诲姞",
+          theme: "warning",
+          direction: "column",
+        });
+      }
+    } else {
+      wx.showToast({
+        title: "鍟嗗搧涓嶅湪鏈夋晥鏈�",
+        icon: "none",
+        duration: 1000,
+      });
+    }
+  },
+  showSuccessToast() {
+    Toast({
+      context: this,
+      selector: "#t-toast",
+      message: "娣诲姞鎴愬姛",
+      theme: "success",
+      direction: "column",
+    });
+  },
+
+
+  //璐拱鎸夐挳
+
+  async buyBtn() {
+    if (!this.data.expire) {
+      let bookOrdersId = "";
+      let query = {
+        remarks: "鐢靛瓙涔�",
+        requests: [{
+          saleMethodId: this.data.digitalsData.defaultSaleMethodId,
+          count: 1,
+        }, ],
+      };
+      // 鍙戣捣璁㈠崟鍒濆鍖栬姹傚苟绛夊緟缁撴灉
+      const res = await app.MG.store.initOrder(query);
+      // 鑾峰彇璁㈠崟鍙峰苟璧嬪�肩粰 orderNumber.value
+      console.log(res, 'res456');
+      bookOrdersId = res.orderNumber;
+      // 妫�鏌ヨ鍗曞彿鏄惁瀛樺湪
+      if (bookOrdersId) {
+        if (this.data.digitalsData.price == "0.00") {
+          app.MG.store
+            .confirmOrder({
+              orderNum: bookOrdersId,
+            })
+            .then((res) => {
+              if (res) {
+                wx.showToast({
+                  title: "棰嗗彇鎴愬姛",
+                  icon: "none",
+                  duration: 1000,
+                });
+                this.getBookInfo(this.data.bookDetail.id);
+              }
+            });
+        } else {
+          const url = "/pages/cart/paymentPage/index?orderNumber=" + bookOrdersId + '&onNorderSaleMethod=' + res.saleMethodLinks[0].orderSaleMethod.id;
+          wx.navigateTo({
+            url,
+          });
+        }
+      } else {
+        console.log(222);
+      }
+    } else {
+      wx.showToast({
+        title: "鍟嗗搧涓嶅湪鏈夋晥鏈�",
+        icon: "none",
+        duration: 1000,
+      });
+    }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
   }
 })
\ No newline at end of file
diff --git a/pages/digitalTextbooks/digitalTextbooksDetails/index.json b/pages/digitalTextbooks/digitalTextbooksDetails/index.json
index 8835af0..8a01d68 100644
--- a/pages/digitalTextbooks/digitalTextbooksDetails/index.json
+++ b/pages/digitalTextbooks/digitalTextbooksDetails/index.json
@@ -1,3 +1,9 @@
 {
-  "usingComponents": {}
+  "component": true,
+  "usingComponents": {
+    "t-tabs": "tdesign-miniprogram/tabs/tabs",
+    "t-tab-panel": "tdesign-miniprogram/tab-panel/tab-panel",
+    "t-image": "tdesign-miniprogram/image/image",
+    "t-toast": "tdesign-miniprogram/toast/toast"
+  }
 }
\ No newline at end of file
diff --git a/pages/digitalTextbooks/digitalTextbooksDetails/index.skeleton.wxml b/pages/digitalTextbooks/digitalTextbooksDetails/index.skeleton.wxml
new file mode 100644
index 0000000..bb243e4
--- /dev/null
+++ b/pages/digitalTextbooks/digitalTextbooksDetails/index.skeleton.wxml
@@ -0,0 +1,187 @@
+<!--
+姝ゆ枃浠朵负寮�鍙戣�呭伐鍏风敓鎴愶紝鐢熸垚鏃堕棿: 2024/6/6涓婂崍11:26:43
+浣跨敤鏂规硶锛�
+鍦� D:\course_of_growth\jsekXcx\jsek-applet\pages\digitalTextbooks\digitalTextbooksDetails\index.wxml 寮曞叆妯℃澘
+
+```
+<import src="index.skeleton.wxml"/>
+<template is="skeleton" wx:if="{{loading}}" />
+```
+
+鍦� D:\course_of_growth\jsekXcx\jsek-applet\pages\digitalTextbooks\digitalTextbooksDetails\index.wxss 涓紩鍏ユ牱寮�
+```
+@import "./index.skeleton.wxss";
+```
+
+鏇村璇︾粏淇℃伅鍙互鍙傝�冩枃妗o細https://developers.weixin.qq.com/miniprogram/dev/devtools/skeleton.html
+-->
+<template name="skeleton">
+  <view class="sk-container">
+    <view>
+      <view class="page-bookService">
+        <view class="digital">
+          <view class="book-box sk-image">
+            <view class="textbookDetails">
+              <view class="book-img">
+                <view class="imageBox">
+                  <image mode="true" class="sk-image"></image>
+                </view>
+                <view class="setCoolect">
+                  <image style="width: 25px;" class="sk-image"></image>
+                </view>
+              </view>
+              <view class="bookContent">
+                <view class="headerText sk-transparent sk-text-14-2857-678 sk-text">
+                  浣撹偛涓庡仴搴凤紙绗�3鐗堬級
+                </view>
+                <view class="content">
+                  <view class="styleCssBox">
+                    <view style="width: 75px;" class="sk-transparent sk-text-14-2857-984 sk-text"> 浣滆�咃細 </view>
+                    <view></view>
+                  </view>
+                  <view class="styleCssBox">
+                    <view style="width: 75px;" class="sk-transparent sk-text-14-2857-115 sk-text">ISBN锛�</view>
+                    <view></view>
+                  </view>
+                  <view class="styleCssBox">
+                    <view style="width: 75px;" class="sk-transparent sk-text-14-2857-39 sk-text"> 鍑虹増鏃堕棿锛� </view>
+                    <view></view>
+                  </view>
+                  <view class="styleCssBox">
+                    <view style="width: 75px;" class="sk-transparent sk-text-14-2857-89 sk-text"> 瀹氫环锛� </view>
+                    <view class="sk-transparent sk-text-14-2857-508 sk-text">锟�38.80</view>
+                  </view>
+                </view>
+                <image class="right-background sk-image"></image>
+              </view>
+            </view>
+            <view class="certificate">
+              <view class="publish sk-transparent sk-text-14-2857-640 sk-text">鍑虹増璇佷功</view>
+              <view class="curriculum sk-transparent sk-text-14-2857-770 sk-text">璇剧▼璇佷功</view>
+            </view>
+          </view>
+        </view>
+        <view style="margin-top: 10px;">
+          <view class="t-tabs tabs--t-tabs t-tabs--top tabs--t-tabs--top  custom-tabs" style="true">
+            <view class="t-sticky sticky--t-sticky  tabs--t-tabs__sticky tabs--t-tabs__sticky--top" style="z-index:1;;">
+              <view class="t-sticky__content sticky--t-sticky__content " style="z-index:1;;">
+                <view class="t-tabs__wrapper tabs--t-tabs__wrapper t-tabs__wrapper--line tabs--t-tabs__wrapper--line">
+                  <scroll-view enable-flex="true" enable-passive="true" enhanced="true" scroll-anchoring="true" scroll-with-animation="true" class="t-tabs__scroll tabs--t-tabs__scroll t-tabs__scroll--top tabs--t-tabs__scroll--top t-tabs__scroll--split tabs--t-tabs__scroll--split sk-pseudo sk-pseudo-circle" scroll-left="0" scroll-x="true">
+                    <view class="t-tabs__nav tabs--t-tabs__nav t-tabs__nav--top tabs--t-tabs__nav--top" style="scroll-snap-align: none;">
+                      <view class="t-tabs__item tabs--t-tabs__item t-tabs__item--line tabs--t-tabs__item--line t-tabs__item--evenly tabs--t-tabs__item--evenly t-tabs__item--top tabs--t-tabs__item--top t-tabs__item--active tabs--t-tabs__item--active sk-image" data-index="0">
+                        <view class="t-tabs__item-inner tabs--t-tabs__item-inner t-tabs__item-inner--line tabs--t-tabs__item-inner--line t-tabs__item-inner--active tabs--t-tabs__item-inner--active sk-transparent">
+                          <view class="t-icon icon--t-icon tabs--t-tabs__icon tabs--undefined" style="width: ; height: ;">
+                            <view class="t-icon--image icon--t-icon--image">
+                              <image class="t-icon__image icon--t-icon__image sk-image" mode="aspectFit"></image>
+                            </view>
+                          </view>鍩烘湰淇℃伅
+                        </view>
+                      </view>
+                      <view class="t-tabs__item tabs--t-tabs__item t-tabs__item--line tabs--t-tabs__item--line t-tabs__item--evenly tabs--t-tabs__item--evenly t-tabs__item--top tabs--t-tabs__item--top " data-index="1">
+                        <view class="t-tabs__item-inner tabs--t-tabs__item-inner t-tabs__item-inner--line tabs--t-tabs__item-inner--line sk-transparent">
+                          <view class="t-icon icon--t-icon tabs--t-tabs__icon tabs--undefined" style="width: ; height: ;">
+                            <view class="t-icon--image icon--t-icon--image">
+                              <image class="t-icon__image icon--t-icon__image sk-image" mode="aspectFit"></image>
+                            </view>
+                          </view>浣滆�呬俊鎭�
+                        </view>
+                      </view>
+                      <view class="t-tabs__item tabs--t-tabs__item t-tabs__item--line tabs--t-tabs__item--line t-tabs__item--evenly tabs--t-tabs__item--evenly t-tabs__item--top tabs--t-tabs__item--top " data-index="2">
+                        <view class="t-tabs__item-inner tabs--t-tabs__item-inner t-tabs__item-inner--line tabs--t-tabs__item-inner--line sk-transparent">
+                          <view class="t-icon icon--t-icon tabs--t-tabs__icon tabs--undefined" style="width: ; height: ;">
+                            <view class="t-icon--image icon--t-icon--image">
+                              <image class="t-icon__image icon--t-icon__image sk-image" mode="aspectFit"></image>
+                            </view>
+                          </view>鐩綍
+                        </view>
+                      </view>
+                      <view class="t-tabs__item tabs--t-tabs__item t-tabs__item--line tabs--t-tabs__item--line t-tabs__item--evenly tabs--t-tabs__item--evenly t-tabs__item--top tabs--t-tabs__item--top " data-index="3">
+                        <view class="t-tabs__item-inner tabs--t-tabs__item-inner t-tabs__item-inner--line tabs--t-tabs__item-inner--line sk-transparent">
+                          <view class="t-icon icon--t-icon tabs--t-tabs__icon tabs--undefined" style="width: ; height: ;">
+                            <view class="t-icon--image icon--t-icon--image">
+                              <image class="t-icon__image icon--t-icon__image sk-image" mode="aspectFit"></image>
+                            </view>
+                          </view>鐩稿叧鏁欐潗
+                        </view>
+                      </view>
+                      <view class="t-tabs__track tabs--t-tabs__track t-tabs__track--top tabs--t-tabs__track--top " style="-webkit-transform: translateX(38.875px); transform: translateX(38.875px); "></view>
+                    </view>
+                  </scroll-view>
+                </view>
+              </view>
+            </view>
+            <view class="t-tabs__content tabs--t-tabs__content">
+              <view class="t-tabs__content-inner tabs--t-tabs__content-inner custom-panel" style="true">
+                <view class="  t-tab-panel panel--t-tab-panel t-is-active panel--t-is-active" style="true" id="947897dc--t_tabs_3_panel_0">
+                  <view class="rubricBox">
+                    <view class="rubricimgBox">
+                      <image mode="true" class="sk-image"></image>
+                    </view>
+                    <view class="basic sk-transparent sk-text-14-2857-357 sk-text"> 鍩烘湰淇℃伅</view>
+                  </view>
+                  <view style="margin: 15px;">
+                    <rich-text nodes="" style="font-size: 14px;color: #333; line-height: 24px;text-align: justify;margin: 10px;"></rich-text>
+                  </view>
+                </view>
+                <view class="  t-tab-panel panel--t-tab-panel" style="height: 0;" id="4fbdafa5--t_tabs_3_panel_1">
+                  <view class="rubricBox">
+                    <view class="rubricimgBox">
+                      <image mode="true" class="sk-image"></image>
+                    </view>
+                    <view class="basic sk-transparent sk-text-14-2857-586 sk-text"> 浣滆�呬俊鎭�</view>
+                  </view>
+                  <view style="margin: 15px;">
+                    <rich-text nodes="" style="font-size: 14px;color: #333; line-height: 24px;text-align: justify;margin: 10px;"></rich-text>
+                  </view>
+                </view>
+                <view class="  t-tab-panel panel--t-tab-panel" style="height: 0;" id="a8fe62e6--t_tabs_3_panel_2">
+                  <view class="rubricBox">
+                    <view class="rubricimgBox">
+                      <image mode="true" class="sk-image"></image>
+                    </view>
+                    <view class="basic sk-transparent sk-text-14-2857-540 sk-text"> 鐩綍</view>
+                  </view>
+                  <view style="margin: 15px;">
+                    <rich-text nodes="" style="font-size: 14px;color: #333; line-height: 24px;text-align: justify;margin: 10px;"></rich-text>
+                  </view>
+                </view>
+                <view class="  t-tab-panel panel--t-tab-panel" style="height: 0;" id="0d4979d4--t_tabs_3_panel_3">
+                  <view class="correlation">
+                    <view data-item="[object Object]">
+                      <view class="correlationImage">
+                        <image mode="true" class="sk-image"></image>
+                      </view>
+                      <view class="correlationName sk-transparent sk-text-14-2857-861 sk-text">濠村辜鍎跨敓娲荤収鎶�</view>
+                    </view>
+                    <view data-item="[object Object]">
+                      <view class="correlationImage">
+                        <image mode="true" class="sk-image"></image>
+                      </view>
+                      <view class="correlationName sk-transparent sk-text-14-2857-135 sk-text">鏂版爣鍑嗛�氱敤鑱屽満鑻辫鍩虹妯″潡涓�</view>
+                    </view>
+                    <view data-item="[object Object]">
+                      <view class="correlationImage">
+                        <image mode="true" class="sk-image"></image>
+                      </view>
+                      <view class="correlationName sk-transparent sk-text-14-2857-639 sk-text">瀛﹀墠鍎跨鍗敓涓庝繚鍋�</view>
+                    </view>
+                  </view>
+                </view>
+              </view>
+            </view>
+          </view>
+        </view>
+        <view class="box-bottom">
+          <view class="trialReading">
+            <view>
+              <image class="t-image image--t-image t-image--shape-square image--t-image--shape-square sk-image" id="a67cec07--image" mode="scaleToFill" style="true"></image>
+            </view>
+            <view class="btn-text sk-transparent sk-text-14-2857-233 sk-text">璇曡</view>
+          </view>
+          <view class="shopCarColor sk-transparent sk-text-14-2857-769 sk-text">鍔犲叆璐墿杞�</view>
+          <view class="buyColor sk-transparent sk-text-14-2857-526 sk-text">绔嬪嵆璐拱</view>
+        </view>
+      </view>
+    </view>
+  </view>
+</template>
\ No newline at end of file
diff --git a/pages/digitalTextbooks/digitalTextbooksDetails/index.skeleton.wxss b/pages/digitalTextbooks/digitalTextbooksDetails/index.skeleton.wxss
new file mode 100644
index 0000000..aa52fff
--- /dev/null
+++ b/pages/digitalTextbooks/digitalTextbooksDetails/index.skeleton.wxss
@@ -0,0 +1,129 @@
+/*
+姝ゆ枃浠朵负寮�鍙戣�呭伐鍏风敓鎴愶紝鐢熸垚鏃堕棿: 2024/6/6涓婂崍11:26:43
+
+鍦� D:\course_of_growth\jsekXcx\jsek-applet\pages\digitalTextbooks\digitalTextbooksDetails\index.wxss 涓紩鍏ユ牱寮�
+```
+@import "./index.skeleton.wxss";
+```
+
+鏇村璇︾粏淇℃伅鍙互鍙傝�冩枃妗o細https://developers.weixin.qq.com/miniprogram/dev/devtools/skeleton.html
+*/
+.sk-transparent {
+    color: transparent !important;
+  }
+.sk-text-14-2857-678 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 50.4000rpx;
+    position: relative !important;
+  }
+.sk-text {
+    background-origin: content-box !important;
+    background-clip: content-box !important;
+    background-color: transparent !important;
+    color: transparent !important;
+    background-repeat: repeat-y !important;
+  }
+.sk-text-14-2857-984 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 39.2000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-115 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 39.2000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-39 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 39.2000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-89 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 39.2000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-508 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 39.2000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-640 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-770 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-357 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-586 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-540 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-861 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 39.2000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-135 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 39.2000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-639 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 39.2000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-233 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-769 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-526 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-image {
+    background: #EFEFEF !important;
+  }
+.sk-pseudo::before, .sk-pseudo::after {
+      background: #EFEFEF !important;
+      background-image: none !important;
+      color: transparent !important;
+      border-color: transparent !important;
+    }
+.sk-pseudo-rect::before, .sk-pseudo-rect::after {
+      border-radius: 0 !important;
+    }
+.sk-pseudo-circle::before, .sk-pseudo-circle::after {
+      border-radius: 50% !important;
+    }
+.sk-container {
+    position: absolute;
+    left: 0;
+    top: 0;
+    width: 100%;
+    height: 100%;
+    overflow: hidden;
+    background-color: transparent;
+  }
diff --git a/pages/digitalTextbooks/digitalTextbooksDetails/index.wxml b/pages/digitalTextbooks/digitalTextbooksDetails/index.wxml
index 3227377..2d8ebfa 100644
--- a/pages/digitalTextbooks/digitalTextbooksDetails/index.wxml
+++ b/pages/digitalTextbooks/digitalTextbooksDetails/index.wxml
@@ -1,5 +1,146 @@
 <!--pages/digitalTextbooks/digitalTextbooksDetails/index.wxml-->
-<view>
-  鏁板瓧鏁欐潗璇︽儏
+<import src="index.skeleton.wxml" />
+<template is="skeleton" wx:if="{{loading}}" />
 
-</view>
\ No newline at end of file
+
+<view wx:if="{{!loading}}">
+  <view class="page-bookService">
+
+    <view class="digital">
+      <view class="book-box">
+
+
+        <view class="textbookDetails">
+          <view class="book-img">
+            <view class="imageBox">
+              <image src="{{digitalsData.icon}}" mode="" />
+            </view>
+
+            <view class="setCoolect">
+              <image src="/static/images/bookService/detail/collect.png" style="width: 50rpx;" bind:tap="setCoolect" wx:if="{{isFavourite}}" />
+              <image src="/static/images/bookService/detail/collecting.png" style="width: 50rpx;" bind:tap="setCoolect" wx:else="" />
+            </view>
+
+
+
+
+          </view>
+          <view class="bookContent">
+            <view class="headerText">
+              {{digitalsData.name}}
+            </view>
+            <view class="content">
+              <view class="styleCssBox">
+                <view style="width: 150rpx;"> 浣滆�咃細 </view>
+                <view>{{ digitalsData.author}}</view>
+              </view>
+              <view class="styleCssBox">
+                <view style="width: 150rpx;">ISBN锛�</view>
+                <view>{{ digitalsData.isbn}}</view>
+              </view>
+              <view class="styleCssBox">
+                <view style="width: 150rpx;"> 鍑虹増鏃堕棿锛� </view>
+                <view>{{ publicationDate}}</view>
+              </view>
+              <view class="styleCssBox">
+                <view style="width: 150rpx;"> 瀹氫环锛� </view>
+                <view wx:if="{{digitalsData.price !== 0}}">锟{ digitalsData.price}}</view>
+                <view wx:else>鍏嶈垂</view>
+              </view>
+            </view>
+            <image src="/static/images/bookService/detail/square.png" class="right-background" />
+          </view>
+
+
+
+        </view>
+        <view class="certificate">
+          <view class="publish">鍑虹増璇佷功</view>
+          <view class="curriculum">璇剧▼璇佷功</view>
+        </view>
+
+
+      </view>
+    </view>
+
+    <view style="margin-top: 20rpx;">
+      <t-tabs defaultValue="{{0}}" bind:change="onTabsChange" bind:click="onTabsClick" t-class="custom-tabs" t-class-content="custom-panel">
+        <t-tab-panel icon="{{ briefIconClick}}" label="鍩烘湰淇℃伅" value="0" style="{{tabPanelstyle}}">
+          <view class="rubricBox">
+            <view class="rubricimgBox">
+              <image src="/static/images/bookService/detail/label.png" mode="" />
+            </view>
+            <view class="basic"> 鍩烘湰淇℃伅</view>
+          </view>
+          <view style="margin: 30rpx;">
+            <rich-text nodes="{{digitalsData.content}}" style="{{richStyle}}"></rich-text>
+          </view>
+
+        </t-tab-panel>
+        <t-tab-panel icon="{{ briefIconClick}}" label="浣滆�呬俊鎭�" value="1" style="{{tabPanelstyle}}">
+          <view class="rubricBox">
+            <view class="rubricimgBox">
+              <image src="/static/images/bookService/detail/author.png" mode="" />
+            </view>
+            <view class="basic"> 浣滆�呬俊鎭�</view>
+          </view>
+          <view style="margin: 30rpx;">
+            <rich-text nodes="{{digitalsData.authorIntroduction}}" style="{{richStyle}}"></rich-text>
+          </view>
+
+
+        </t-tab-panel>
+        <t-tab-panel icon="{{ briefIconClick}}" label="鐩綍" value="2" style="{{tabPanelstyle}}">
+
+          <view class="rubricBox">
+            <view class="rubricimgBox">
+              <image src="/static/images/bookService/detail/author.png" mode="" />
+            </view>
+            <view class="basic"> 鐩綍</view>
+          </view>
+
+          <view style="margin: 30rpx;">
+
+
+            <rich-text nodes="{{digitalsData.catalogue}}" style="{{richStyle}}"></rich-text>
+          </view>
+
+
+
+        </t-tab-panel>
+        <t-tab-panel icon="{{ briefIconClick}}" label="鐩稿叧鏁欐潗" value="3" style="{{tabPanelstyle}}">
+
+
+          <view class="correlation">
+            <view wx:for="{{relatedBookData}}" wx:key="index" wx:for-item="item" wx:for-index="index" data-item="{{item}}" bind:tap="onCorrelationBook">
+
+              <view class="correlationImage">
+                <image src="{{item.icon}}" mode="" />
+                <img wx:if="{{item.icon == ''}}" src="/static/images/default-book-img.png" alt="" />
+              </view>
+
+              <view class="correlationName">{{item.name}}</view>
+            </view>
+          </view>
+
+
+
+        </t-tab-panel>
+      </t-tabs>
+
+    </view>
+    <view class="box-bottom">
+      <view class="trialReading" bind:tap="goRead">
+        <view>
+          <t-image src="/static/images/bookService/detail/shidu.png"></t-image>
+        </view>
+        <view class="btn-text">璇曡</view>
+      </view>
+      <view class="shopCarColor" bind:tap="addBookShopcCar" wx:if="{{!isBuy}}">鍔犲叆璐墿杞�</view>
+      <view class="buyColor" bind:tap="buyBtn" wx:if="{{!isBuy}}">绔嬪嵆璐拱</view>
+      <!-- <view class="buyColor" bind:tap="buyBtn" wx:if="{{digitalsData.price == 0}} ">鍏嶈垂棰嗗彇</view> -->
+      <view class="buyColor" bind:tap="goRead" wx:if="{{isBuy}}">绔嬪嵆闃呰</view>
+    </view>
+  </view>
+</view>
+<t-toast id="t-toast" />
\ No newline at end of file
diff --git a/pages/digitalTextbooks/digitalTextbooksDetails/index.wxss b/pages/digitalTextbooks/digitalTextbooksDetails/index.wxss
index 57c9936..dd8edb7 100644
--- a/pages/digitalTextbooks/digitalTextbooksDetails/index.wxss
+++ b/pages/digitalTextbooks/digitalTextbooksDetails/index.wxss
@@ -1 +1,261 @@
-/* pages/digitalTextbooks/digitalTextbooksDetails/index.wxss */
\ No newline at end of file
+/* pages/digitalTextbooks/digitalTextbooksDetails/index.wxss */
+
+@import "./index.skeleton.wxss";
+
+image {
+  width: 100%;
+  height: 100%;
+}
+
+
+
+
+.textbookDetails {
+  display: flex;
+  flex-direction: row;
+  padding: 30rpx;
+  background-color: #fff;
+  border-radius: 0 0 20rpx 20rpx;
+}
+
+.book-img {
+  width: 240rpx;
+  min-height: 340rpx;
+  box-shadow: 0px 3px 6px 1px rgba(0, 0, 0, 0.16);
+  padding: 15rpx;
+}
+
+.setCoolect {
+  display: flex;
+  justify-content: flex-end;
+  width: 100%;
+  height: 50rpx;
+  margin: 10rpx 0;
+}
+
+.imageBox {
+  width: 210rpx;
+  height: 310rpx;
+  margin: 0 auto;
+}
+
+.bookContent {
+  margin-left: 30rpx;
+}
+
+.right-background {
+  width: 160rpx;
+  height: 160rpx;
+  position: absolute;
+  top: 150rpx;
+  right: -50rpx;
+  z-index: 0;
+}
+
+.content {
+  margin-top: 30rpx;
+}
+
+.styleCssBox {
+  display: flex;
+  flex-direction: row;
+  margin: 20rpx 0;
+  font-size: 28rpx;
+}
+
+.headerText {
+  font-weight: bold;
+  font-size: 36rpx;
+  color: #000000;
+}
+
+.certificate {
+  display: flex;
+  align-items: center;
+  justify-content: space-around;
+  width: 100%;
+  height: 120rpx;
+  border-radius: 0 0 20rpx 20rpx;
+}
+
+.book-box {
+  background: linear-gradient(to right, #FFB400, #FF6C00);
+  border-radius: 0 0 20rpx 20rpx;
+}
+
+
+
+
+
+.digital {
+  background-color: #F2F3F8;
+  padding-bottom: 20rpx;
+}
+
+.publish {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  width: 300rpx;
+  height: 80rpx;
+  background-color: #fff;
+}
+
+.curriculum {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  width: 300rpx;
+  height: 80rpx;
+  background-color: #fff;
+}
+
+.t-tabs__item-inner {
+  flex-direction: column;
+  color: #ff6c00;
+}
+
+.t-tabs__item--active {
+  color: #FF6C00 !important;
+}
+
+.t-tabs__track {
+  background-color: #FF6C00 !important;
+  bottom: -20rpx !important;
+}
+
+.t-tabs__scroll--split {
+  height: 120rpx !important;
+}
+
+.t-tabs__item-inner .t-icon {
+  margin-bottom: 10rpx;
+}
+
+.t-tabs__item-inner .t-icon {
+  margin-bottom: 20rpx;
+}
+
+.t-tabs__item-inner .t-icon__image {
+  width: 36rpx !important;
+  height: 44rpx !important;
+}
+
+.t-tabs__nav .t-tabs__item:nth-child(3) .t-tabs__item-inner .t-icon__image {
+  width: 44rpx !important;
+  height: 40rpx !important;
+}
+
+.t-tabs__nav .t-tabs__item {
+  width: 160rpx !important;
+  padding: 0 !important;
+}
+
+.t-tabs__scroll {
+  overflow-x: auto;
+}
+
+.t-tabs__item--evenly {
+  flex: 1 0 auto !important;
+}
+
+.t-tabs .t-tabs__item--active {
+  background-repeat: no-repeat;
+  background-size: 35%;
+  background-position: 50% 40%;
+  background-image: url(https://jsek.bnuic.com/home/image/click-icon.png);
+}
+
+.rubricBox {
+  display: flex;
+  flex-direction: row;
+  margin: 50rpx;
+  margin-bottom: 0;
+}
+
+.rubricimgBox {
+  width: 40rpx;
+  height: 45rpx;
+}
+
+.basic {
+  margin-left: 18rpx;
+  font-size: 32rpx;
+  color: #333;
+  font-weight: bold;
+}
+
+.correlationImage {
+  width: 180rpx;
+  height: 255rpx;
+}
+
+.correlation {
+  display: flex;
+  flex-direction: row;
+  justify-content: space-around;
+  margin: 30rpx;
+}
+
+.correlationName {
+  width: 150rpx;
+  margin-top: 20rpx;
+  word-break: break-all;
+  display: -webkit-box;
+  -webkit-line-clamp: 2;
+  -webkit-box-orient: vertical;
+  overflow: hidden;
+  color: #333;
+  font-weight: bold;
+  font-size: 28rpx;
+}
+
+.page-bookService {
+  width: 100vw;
+  height: 100%;
+  /* position: relative; */
+}
+
+.box-bottom {
+  position: fixed;
+  left: 0;
+  bottom: 0;
+  width: 100%;
+  height: 110rpx;
+
+  margin-bottom: env(safe-area-inset-bottom);
+  display: flex;
+  flex-direction: row;
+}
+
+.trialReading {
+  width: 50%;
+  height: 110rpx;
+  border-right: 1px solid #DDD;
+  background-color: #fff;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+}
+
+.shopCarColor {
+  width: 350rpx;
+  height: 110rpx;
+  border-right: 1px solid #DDD;
+  color: #fff;
+  background-color: #f0ad36;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+}
+
+.buyColor {
+  width: 50%;
+  height: 110rpx;
+  border-right: 1px solid #DDD;
+  color: #fff;
+  background-color: #f04d3b;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+}
\ No newline at end of file
diff --git a/pages/digitalTextbooks/index.js b/pages/digitalTextbooks/index.js
index b3e1e93..f5d8a7b 100644
--- a/pages/digitalTextbooks/index.js
+++ b/pages/digitalTextbooks/index.js
@@ -3,6 +3,11 @@
 import {
   getPublicImage
 } from "../../assets/js/middleGround/tool";
+import {
+  setSessionGuid,
+  setNewView,
+  storage
+} from "../../assets/js/userAction";
 Page({
 
   /**
@@ -17,6 +22,7 @@
     selectedIndex: 0,
     digitalTextbooksData: [],
     path: "jsek_dTHigherEducation",
+    loading: true
 
   },
 
@@ -208,11 +214,13 @@
           viewCount: [],
           ...searchObj
         }
-      })
-      .then((res) => {
+      }).then((res) => {
         this.setData({
-          digitalTextbooksData: res.datas
+          digitalTextbooksData: res.datas,
+          loading: false
         })
+
+
         console.log(this.data.digitalTextbooksData);
       })
   },
@@ -224,6 +232,8 @@
     const item = e.currentTarget.dataset.item
     console.log(item);
     // 鍦ㄦ煇涓簨浠跺鐞嗗嚱鏁颁腑锛屾瘮濡傛寜閽殑鐐瑰嚮浜嬩欢
+    setNewView('productId', item.id)
+    this.bookExhibitionGet()
     wx.navigateTo({
       url: '/pages/digitalTextbooks/digitalTextbooksDetails/index?id=' + item.id
     });
diff --git a/pages/digitalTextbooks/index.skeleton.wxml b/pages/digitalTextbooks/index.skeleton.wxml
new file mode 100644
index 0000000..1632d51
--- /dev/null
+++ b/pages/digitalTextbooks/index.skeleton.wxml
@@ -0,0 +1,146 @@
+<!--
+姝ゆ枃浠朵负寮�鍙戣�呭伐鍏风敓鎴愶紝鐢熸垚鏃堕棿: 2024/6/6涓婂崍11:33:06
+浣跨敤鏂规硶锛�
+鍦� D:\course_of_growth\jsekXcx\jsek-applet\pages\digitalTextbooks\index.wxml 寮曞叆妯℃澘
+
+```
+<import src="index.skeleton.wxml"/>
+<template is="skeleton" wx:if="{{loading}}" />
+```
+
+鍦� D:\course_of_growth\jsekXcx\jsek-applet\pages\digitalTextbooks\index.wxss 涓紩鍏ユ牱寮�
+```
+@import "./index.skeleton.wxss";
+```
+
+鏇村璇︾粏淇℃伅鍙互鍙傝�冩枃妗o細https://developers.weixin.qq.com/miniprogram/dev/devtools/skeleton.html
+-->
+<template name="skeleton">
+  <view class="sk-container">
+    <view class="fixed-header">
+      <view style="width: 100%; height: 44px;"></view>
+      <view class="nacigationBar" style="width: 70%; height: 40px;">
+        <view>
+          <view class="t-icon icon--t-icon  " style="font-size: 30px;">
+            <label class="t-icon-chevron-left icon--t-icon-chevron-left t-icon-base icon--t-icon-base sk-pseudo sk-pseudo-circle"></label>
+          </view>
+        </view>
+        <view class="navBar-search t-search search--t-search " style="width: 232px;">
+          <view class="t-search__input-box search--t-search__input-box t-not-focused search--t-not-focused t-search__input-box-- search--t-search__input-box-- t-search__input-box--round search--t-search__input-box--round ">
+            <view class="t-icon icon--t-icon search--t-icon  " style="font-size: 24px;">
+              <label class="t-icon-search icon--t-icon-search t-icon-base icon--t-icon-base sk-pseudo sk-pseudo-circle"></label>
+            </view>
+            <view class="t-input__keyword search--t-input__keyword sk-image" cursor="0" maxlength="-1" name="input" placeholder="璇疯緭鍏ュ叧閿瘝/涔﹀悕/ISBN/浣滆��" placeholder-class=" t-search__placeholder t-search__placeholder--normal" placeholder-style="true" selection-end="-1"
+              selection-start="-1" type="text" value="true"></view>
+          </view>
+        </view>
+      </view>
+      <view class="tabBox">
+        <view data-index="0">
+          <view class="sk-transparent sk-text-14-2857-9 sk-text">
+            楂樼瓑鏁欒偛
+          </view>
+          <view style="margin-top: 10px;"></view>
+        </view>
+        <view data-index="1" class="nameBox">
+          <view class="sk-transparent sk-text-14-2857-611 sk-text">
+            鑱屼笟鏁欒偛
+          </view>
+          <view style="margin-top: 10px;" class="bottomLineBox"></view>
+        </view>
+        <view data-index="2">
+          <view class="sk-transparent sk-text-14-2857-795 sk-text">
+            鏁欏笀鏁欒偛
+          </view>
+          <view style="margin-top: 10px;"></view>
+        </view>
+        <view data-index="3">
+          <view class="sk-transparent sk-text-14-2857-936 sk-text">
+            鍩虹鏁欒偛
+          </view>
+          <view style="margin-top: 10px;"></view>
+        </view>
+      </view>
+    </view>
+    <view class="contentBox">
+      <view class="titleBox">
+        <view class="frameBox"></view>
+        <view class="titleTextBox">
+          <view class="sk-transparent sk-text-14-2857-285 sk-text">鏁板瓧鏁欐潗鍒楄〃</view>
+        </view>
+      </view>
+      <view class="bookContentBox">
+        <view class="external" data-item="[object Object]">
+          <view class="amountClick">
+            <view class="t-icon icon--t-icon  " style="font-size: 15px;">
+              <label class="t-icon-browse icon--t-icon-browse t-icon-base icon--t-icon-base sk-pseudo sk-pseudo-circle"></label>
+            </view>
+            <view style="margin-left: 2px;" class="sk-transparent sk-text-14-2857-217 sk-text">41</view>
+          </view>
+          <view class="imageBox">
+            <image mode="true" class="sk-image"></image>
+          </view>
+          <view class="bookName sk-transparent sk-text-14-2857-567 sk-text">浣撹偛涓庡仴搴凤紙绗�3鐗堬級</view>
+          <view class="information">
+            <view class="sk-transparent sk-opacity">-</view>
+            <view class="price sk-transparent sk-text-14-2857-919 sk-text">锟�38.8</view>
+          </view>
+        </view>
+        <view class="external" data-item="[object Object]">
+          <view class="amountClick">
+            <view class="t-icon icon--t-icon  " style="font-size: 15px;">
+              <label class="t-icon-browse icon--t-icon-browse t-icon-base icon--t-icon-base sk-pseudo sk-pseudo-circle"></label>
+            </view>
+            <view style="margin-left: 2px;" class="sk-transparent sk-text-14-2857-267 sk-text">34</view>
+          </view>
+          <view class="imageBox">
+            <image mode="true" class="sk-image"></image>
+          </view>
+          <view class="bookName sk-transparent sk-text-14-2857-920 sk-text">濠村辜鍎跨敓娲荤収鎶�</view>
+          <view class="information">
+            <view class="book-author sk-transparent sk-text-14-2857-788 sk-text">
+              璧甸潚
+            </view>
+            <view class="price sk-transparent sk-text-14-2857-635 sk-text"> 鍏嶈垂</view>
+          </view>
+        </view>
+        <view class="external" data-item="[object Object]">
+          <view class="amountClick">
+            <view class="t-icon icon--t-icon  " style="font-size: 15px;">
+              <label class="t-icon-browse icon--t-icon-browse t-icon-base icon--t-icon-base sk-pseudo sk-pseudo-circle"></label>
+            </view>
+            <view style="margin-left: 2px;" class="sk-transparent sk-text-14-2857-575 sk-text">186</view>
+          </view>
+          <view class="imageBox">
+            <image mode="true" class="sk-image"></image>
+          </view>
+          <view class="bookName sk-transparent sk-text-14-2857-586 sk-text">鏂版爣鍑嗛�氱敤鑱屽満鑻辫鍩虹妯″潡涓�</view>
+          <view class="information">
+            <view class="book-author sk-transparent sk-text-14-2857-82 sk-text">
+              鐜嬫湞鏅栨�讳富缂�
+            </view>
+            <view class="price sk-transparent sk-text-14-2857-5 sk-text">锟�0.01</view>
+          </view>
+        </view>
+        <view class="external" data-item="[object Object]">
+          <view class="amountClick">
+            <view class="t-icon icon--t-icon  " style="font-size: 15px;">
+              <label class="t-icon-browse icon--t-icon-browse t-icon-base icon--t-icon-base sk-pseudo sk-pseudo-circle"></label>
+            </view>
+            <view style="margin-left: 2px;" class="sk-transparent sk-text-14-2857-620 sk-text">129</view>
+          </view>
+          <view class="imageBox">
+            <image mode="true" class="sk-image"></image>
+          </view>
+          <view class="bookName sk-transparent sk-text-14-2857-616 sk-text">瀛﹀墠鍎跨鍗敓涓庝繚鍋�</view>
+          <view class="information">
+            <view class="book-author sk-transparent sk-text-14-2857-82 sk-text">
+              寮犲叞棣� 娼樼钀�
+            </view>
+            <view class="price sk-transparent sk-text-14-2857-116 sk-text"> 鍏嶈垂</view>
+          </view>
+        </view>
+      </view>
+    </view>
+  </view>
+</template>
\ No newline at end of file
diff --git a/pages/digitalTextbooks/index.skeleton.wxss b/pages/digitalTextbooks/index.skeleton.wxss
new file mode 100644
index 0000000..0c073ed
--- /dev/null
+++ b/pages/digitalTextbooks/index.skeleton.wxss
@@ -0,0 +1,142 @@
+/*
+姝ゆ枃浠朵负寮�鍙戣�呭伐鍏风敓鎴愶紝鐢熸垚鏃堕棿: 2024/6/6涓婂崍11:33:06
+
+鍦� D:\course_of_growth\jsekXcx\jsek-applet\pages\digitalTextbooks\index.wxss 涓紩鍏ユ牱寮�
+```
+@import "./index.skeleton.wxss";
+```
+
+鏇村璇︾粏淇℃伅鍙互鍙傝�冩枃妗o細https://developers.weixin.qq.com/miniprogram/dev/devtools/skeleton.html
+*/
+.sk-transparent {
+    color: transparent !important;
+  }
+.sk-text-14-2857-9 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-text {
+    background-origin: content-box !important;
+    background-clip: content-box !important;
+    background-color: transparent !important;
+    color: transparent !important;
+    background-repeat: repeat-y !important;
+  }
+.sk-text-14-2857-611 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-795 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-936 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-285 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 44.8000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-217 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 33.6000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-567 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 39.2000rpx;
+    position: relative !important;
+  }
+.sk-opacity {
+    opacity: 0 !important;
+  }
+.sk-text-14-2857-919 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 33.6000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-267 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 33.6000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-920 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 39.2000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-788 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 33.6000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-635 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 33.6000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-575 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 33.6000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-586 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 39.2000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-82 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 33.6000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-5 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 33.6000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-620 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 33.6000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-616 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 39.2000rpx;
+    position: relative !important;
+  }
+.sk-text-14-2857-116 {
+    background-image: linear-gradient(transparent 14.2857%, #EEEEEE 0%, #EEEEEE 85.7143%, transparent 0%) !important;
+    background-size: 100% 33.6000rpx;
+    position: relative !important;
+  }
+.sk-image {
+    background: #EFEFEF !important;
+  }
+.sk-pseudo::before, .sk-pseudo::after {
+      background: #EFEFEF !important;
+      background-image: none !important;
+      color: transparent !important;
+      border-color: transparent !important;
+    }
+.sk-pseudo-rect::before, .sk-pseudo-rect::after {
+      border-radius: 0 !important;
+    }
+.sk-pseudo-circle::before, .sk-pseudo-circle::after {
+      border-radius: 50% !important;
+    }
+.sk-container {
+    position: absolute;
+    left: 0;
+    top: 0;
+    width: 100%;
+    height: 100%;
+    overflow: hidden;
+    background-color: transparent;
+  }
diff --git a/pages/digitalTextbooks/index.wxml b/pages/digitalTextbooks/index.wxml
index 94baf84..27567e6 100644
--- a/pages/digitalTextbooks/index.wxml
+++ b/pages/digitalTextbooks/index.wxml
@@ -1,63 +1,71 @@
 <!--pages/digitalTextbooks/digitalTextbooks.wxml-->
-
-<view class="fixed-header">
-  <view style="width: 100%; height: {{barHeight}}px;"></view>
-  <view class="nacigationBar" style="width: 70%; height: {{navBarHeight}}px;">
-    <view>
-      <t-icon name="chevron-left" size="30" data-name="{{item}}" bind:click="goBack" />
-    </view>
-    <t-search model:value="{{searchValue}}" shape="round" placeholder="璇疯緭鍏ュ叧閿瘝/涔﹀悕/ISBN/浣滆��" class="navBar-search" style="width: 464rpx" bind:submit="searchBook" />
-  </view>
+<import src="index.skeleton.wxml" />
+<template is="skeleton" wx:if="{{loading}}" />
 
 
+<view wx:if="{{!loading}}">
 
-  <view class="tabBox">
-    <view wx:for="{{tabList}}" wx:key="index" wx:for-item="item" wx:for-index="index" class="{{selectedIndex == index? 'nameBox' :''}}" data-index="{{index}}" bind:tap="selectTab">
+
+  <view class="fixed-header">
+    <view style="width: 100%; height: {{barHeight}}px;"></view>
+    <view class="nacigationBar" style="width: 70%; height: {{navBarHeight}}px;">
       <view>
-        {{item.name}}
+        <t-icon name="chevron-left" size="30" data-name="{{item}}" bind:click="goBack" />
       </view>
-      <view style="margin-top: 20rpx; " class="{{selectedIndex == index? 'bottomLineBox' :''}}"></view>
+      <t-search model:value="{{searchValue}}" shape="round" placeholder="璇疯緭鍏ュ叧閿瘝/涔﹀悕/ISBN/浣滆��" class="navBar-search" style="width: 464rpx" bind:submit="searchBook" />
     </view>
-  </view>
-
-</view>
 
 
 
-<view class="contentBox">
-
-  <view class="titleBox">
-    <view class="frameBox"></view>
-    <view class="titleTextBox">
-      <!-- <image src="/static/images/bookExhibitionList/zhuantitaolun.png" mode="aspectFit" /> -->
-
-      <view>鏁板瓧鏁欐潗鍒楄〃</view>
-    </view>
-  </view>
-
-
-
-  <view class="bookContentBox">
-    <view class="external" wx:for="{{digitalTextbooksData}}" wx:key="index" wx:for-item="item" wx:for-index="index" data-item="{{item}}" bind:tap="jumpDetails">
-      <view class="amountClick">
-        <t-icon name="browse" size="15" data-name="{{item}}" bind:click="goBack" />
-        <view>{{item.viewCount}}</view>
-      </view>
-      <view class="imageBox">
-        <image src="{{item.icon ? item.icon : '/static/images/default-book-img.png'}}" mode="" />
-      </view>
-      <view class="bookName">{{item.name}}</view>
-      <view class="information">
-        <view wx:if="{{item.author}}" class="book-author">
-          {{ item.author }}
+    <view class="tabBox">
+      <view wx:for="{{tabList}}" wx:key="index" wx:for-item="item" wx:for-index="index" class="{{selectedIndex == index? 'nameBox' :''}}" data-index="{{index}}" bind:tap="selectTab">
+        <view>
+          {{item.name}}
         </view>
-        <view wx:else>-</view>
-        <view wx:if="{{item.price == 0}}" class="price"> 鍏嶈垂</view>
-        <view wx:else class="price">锟{ item.price }}</view>
+        <view style="margin-top: 20rpx; " class="{{selectedIndex == index? 'bottomLineBox' :''}}"></view>
       </view>
     </view>
-    <view wx:if="{{!digitalTextbooksData.length }}" class="noData">
-      <t-empty icon="folder-open" description="鏆傛棤鏁版嵁" />
+
+  </view>
+
+
+
+  <view class="contentBox">
+
+    <view class="titleBox">
+      <view class="frameBox"></view>
+      <view class="titleTextBox">
+        <!-- <image src="/static/images/bookExhibitionList/zhuantitaolun.png" mode="aspectFit" /> -->
+
+        <view>鏁板瓧鏁欐潗鍒楄〃</view>
+      </view>
+    </view>
+
+
+
+    <view class="bookContentBox">
+      <view class="external" wx:for="{{digitalTextbooksData}}" wx:key="index" wx:for-item="item" wx:for-index="index" data-item="{{item}}" bind:tap="jumpDetails">
+        <view class="amountClick">
+          <t-icon name="browse" size="15" data-name="{{item}}" bind:click="goBack" />
+          <view style="margin-left: 5rpx;">{{item.viewCount}}</view>
+        </view>
+        <view class="imageBox">
+          <image src="{{item.icon ? item.icon : '/static/images/default-book-img.png'}}" mode="" />
+        </view>
+        <view class="bookName">{{item.name}}</view>
+        <view class="information">
+          <view wx:if="{{item.author}}" class="book-author">
+            {{ item.author }}
+          </view>
+          <view wx:else>-</view>
+          <view wx:if="{{item.price == 0}}" class="price"> 鍏嶈垂</view>
+          <view wx:else class="price">锟{ item.price }}</view>
+        </view>
+      </view>
+      <view wx:if="{{!digitalTextbooksData.length }}" class="noData">
+        <t-empty icon="folder-open" description="鏆傛棤鏁版嵁" />
+      </view>
     </view>
   </view>
+
 </view>
\ No newline at end of file
diff --git a/pages/digitalTextbooks/index.wxss b/pages/digitalTextbooks/index.wxss
index 41e8c87..f8b7110 100644
--- a/pages/digitalTextbooks/index.wxss
+++ b/pages/digitalTextbooks/index.wxss
@@ -1,4 +1,5 @@
 /* pages/digitalTextbooks/index.wxss */
+@import "./index.skeleton.wxss";
 
 .nacigationBar {
   display: flex;
@@ -47,6 +48,10 @@
   width: 50rpx;
   background-color: #FF6C00;
   margin: 0 auto;
+}
+
+page {
+  background-color: #F2F3F8;
 }
 
 .contentBox {
@@ -117,7 +122,8 @@
   flex-direction: row;
   justify-content: flex-end;
   align-items: center;
-  font-size: 30rpx;
+  font-size: 25rpx;
+  color: rgb(153, 153, 153);
 
 }
 
diff --git a/pages/home/home.js b/pages/home/home.js
index 54de09d..0feef1c 100644
--- a/pages/home/home.js
+++ b/pages/home/home.js
@@ -151,6 +151,7 @@
   //鐐瑰嚮鐩綍
   toPages(item) {
     let info = item.target.dataset.info
+    console.log(info);
     if (info.url) {
       if (info.text == "鍥句功鏈嶅姟") {
         wx.switchTab({
diff --git a/services/home/home.js b/services/home/home.js
index 8c27ad4..df55b53 100644
--- a/services/home/home.js
+++ b/services/home/home.js
@@ -23,12 +23,22 @@
           icon: '/static/images/home/shuzikecheng@2x.png',
           url: '',
         },
+
+
+
+
+
         {
           text: '鏁板瓧鏁欐潗',
           key: 3,
           icon: '/static/images/home/shuzijiaocai@2x.png',
-          url: '',
+          url: '/pages/digitalTextbooks/index',
         },
+
+
+
+
+
         {
           text: '涓撻璁ㄨ',
           key: 4,

--
Gitblit v1.9.1