From 68eee6caeec1753bfba8c937ab862ef05cb42bb8 Mon Sep 17 00:00:00 2001
From: litian <2804272236@qq.com>
Date: 星期二, 14 五月 2024 16:36:13 +0800
Subject: [PATCH] biji

---
 vite.config.ts            |    2 
 src/assets/main.css       |   61 ++++----
 src/assets/js/config.ts   |    3 
 src/qiankunState/state.ts |    6 
 electron/main.ts          |    2 
 src/child.ts              |    1 
 src/views/home.vue        |  316 +++++++++++++++++++++++++++++----------------
 7 files changed, 244 insertions(+), 147 deletions(-)

diff --git a/electron/main.ts b/electron/main.ts
index db462f2..e1a7f61 100644
--- a/electron/main.ts
+++ b/electron/main.ts
@@ -48,7 +48,7 @@
     require('electron-reload')('../', {
       electron: require(elePath)
     })
-    win.loadURL('http://192.168.3.203:8005')
+    win.loadURL('http://localhost:8005')
     win.webContents.openDevTools()
   } else {
     win.loadURL(path.join(__dirname, 'index.html'))
diff --git a/src/assets/js/config.ts b/src/assets/js/config.ts
index 3373752..314ab80 100644
--- a/src/assets/js/config.ts
+++ b/src/assets/js/config.ts
@@ -1,6 +1,7 @@
 // 娴嬭瘯
 export const ctx = "http://182.92.203.7:3001";
 export const downloaderFileCtx = "http://182.92.203.7:3007/DigitalTextbookReader";
-export const ctxUrl = "http://182.92.203.7:3007"; //鏈嶅姟鍣ㄥ湴鍧�
+export const ctxUrl = "http://182.92.203.7:3007/books/book/1"; //鏈嶅姟鍣ㄥ湴鍧�
+export const resourceUrl = "http://182.92.203.7:3007/books/resource/1"; //璧勬簮鍦板潃
 export const requestCtx = "https://jsek.bnuic.com"; //jsek
 
diff --git a/src/assets/main.css b/src/assets/main.css
index 492df2b..702bb60 100644
--- a/src/assets/main.css
+++ b/src/assets/main.css
@@ -38,34 +38,33 @@
 }
 
 /* 璁剧疆 */
-.settingBox{
-  .inline{
-    display: flex;
-    justify-content: space-between;
-  }
-  .lineTypeBox{
-    width:190px;
-    padding:0 !important;
-    .typeItem{
-      line-height:16px;
-    }
-  }
-  .bgColor{
-    display: flex;
-    width: 190px;
-    .flex1 {
-      flex: 1;
-      .scribeItem {
-        width: 30px;
-        height: 30px;
-        border-radius: 5px;
-        border: 1px solid;
-        display: flex;
-        justify-content: center;
-        align-items: center;
-      }
-    }
-  }
+.settingBox .inline {
+  display: flex;
+  justify-content: space-between;
+}
+.settingBox.lineTypeBox {
+  width: 190px;
+  padding: 0 !important;
+ 
+}
+.settingBox.lineTypeBox .typeItem {
+  line-height: 16px !important;
+}
+.settingBox .bgColor {
+  display: flex;
+  width: 190px;
+}
+.settingBox .bgColor .flex1 {
+  flex: 1;
+}
+.settingBox .bgColor .scribeItem {
+  width: 30px;
+  height: 30px;
+  border-radius: 5px;
+  border: 1px solid;
+  display: flex;
+  justify-content: center;
+  align-items: center;
 }
 /* 鐢荤瑪宸ュ叿 */
 .popinnerBox .brush {
@@ -194,9 +193,9 @@
   flex: 1;
   text-align: center;
 }
-.popinnerBox .cleanup .cleanupItem img{
-  height:17px;
-  width:20px;
+.popinnerBox .cleanup .cleanupItem img {
+  height: 17px;
+  width: 20px;
 }
 
 .el-input__inner {
diff --git a/src/child.ts b/src/child.ts
index e80be34..b6b8fb8 100644
--- a/src/child.ts
+++ b/src/child.ts
@@ -6,6 +6,7 @@
 
 actions.onGlobalStateChange((state, prev) => {
   console.log("鐖跺眰鍙樺寲锛�",state, prev)
+  
 })
 
 export const microApps = {
diff --git a/src/qiankunState/state.ts b/src/qiankunState/state.ts
index 6646904..8adcda0 100644
--- a/src/qiankunState/state.ts
+++ b/src/qiankunState/state.ts
@@ -1,6 +1,10 @@
 const state = {
   state: 0,
-  windowSelection: null
+  bookName:"",
+  bookId:0,
+  windowSelection: null,
+  fontSizeNum: 16,
+  bgColor: '#FBF9F4'
 }
 
 
diff --git a/src/views/home.vue b/src/views/home.vue
index 44c6920..ee53874 100644
--- a/src/views/home.vue
+++ b/src/views/home.vue
@@ -285,7 +285,7 @@
             <div class="">宸蹭笂璇撅細{{ headerData.classTime }}</div>
           </div>
           <div class="progress">
-            <div class="bookName">瀛﹀墠鍎跨鍗敓涓庝繚鍋ワ紙绗笁鐗堬級</div>
+            <div class="bookName">{{bookName}}</div>
             <div>{{ headerData.process }}%</div>
           </div>
           <div class="rightBox">
@@ -302,7 +302,7 @@
         <!-- 寰簲鐢ㄧ洅瀛� -->
         <div class="pageBox-content" @scroll="pageScroll">
           <div class="content-box">
-            <div id="container" @mousedown="handleMouseDown" @mousemove="handleMousemove"></div>
+            <div id="container" @mousedown="handleMouseDown" @mousemove="handleMousemove" ></div>
             <!-- 鐢荤瑪鐢诲竷 -->
             <div class="canvas-box" v-show="canvasShow">
               <canvas id="canvasRef" :width="canvasWith" :height="canvasheight"></canvas>
@@ -402,14 +402,34 @@
               </div>
             </div>
             <template #reference>
-              <div :class="floatingToolData.activeToolData == item.name ? 'floatToolActive floatToolItem' : 'floatToolItem'">
-                <img :src="floatingToolData.activeToolData == item.name ? item.activeIcon : item.icon" alt="" />
+              <div
+                :class="
+                  floatingToolData.activeToolData == item.name
+                    ? 'floatToolActive floatToolItem'
+                    : 'floatToolItem'
+                "
+              >
+                <img
+                  :src="floatingToolData.activeToolData == item.name ? item.activeIcon : item.icon"
+                  alt=""
+                />
                 <div class="text">{{ item.name }}</div>
               </div>
             </template>
           </el-popover>
-          <div :class="floatingToolData.activeToolData == item.name ? 'floatToolActive floatToolItem' : 'floatToolItem'" v-else @click="floatItemHandle(item)">
-            <img :src="floatingToolData.activeToolData == item.name ? item.activeIcon : item.icon" alt="" />
+          <div
+            :class="
+              floatingToolData.activeToolData == item.name
+                ? 'floatToolActive floatToolItem'
+                : 'floatToolItem'
+            "
+            v-else
+            @click="floatItemHandle(item)"
+          >
+            <img
+              :src="floatingToolData.activeToolData == item.name ? item.activeIcon : item.icon"
+              alt=""
+            />
             <div class="text">{{ item.name }}</div>
           </div>
         </div>
@@ -418,7 +438,7 @@
         <div class="toolList">
           <el-popover placement="top" width="250" trigger="click">
             <div class="popinnerBox">
-              <div class="brush" >
+              <div class="brush">
                 <div class="thickness">
                   <div
                     :class="toolSelectData.thicknessActive == '1' ? 'small active' : 'small'"
@@ -528,7 +548,7 @@
             <template #reference>
               <div class="floatToolItem" @click="toolSelectHandle('wenzi')">
                 <div class="imgBox">
-                <img :src="wenzi2" alt="" />
+                  <img :src="wenzi2" alt="" />
                 </div>
                 <div class="text">鏂囧瓧</div>
               </div>
@@ -574,7 +594,7 @@
               </div>
             </div>
             <template #reference>
-              <div class="floatToolItem"  @click="toolSelectHandle('tuxing')">
+              <div class="floatToolItem" @click="toolSelectHandle('tuxing')">
                 <div class="imgBox">
                   <img :src="tuxing" alt="" />
                 </div>
@@ -582,7 +602,7 @@
               </div>
             </template>
           </el-popover>
-          <div class="floatToolItem"  @click="toolSelectHandle('xiangpi')">
+          <div class="floatToolItem" @click="toolSelectHandle('xiangpi')">
             <div class="imgBox">
               <img :src="clearPrevious" alt="" />
             </div>
@@ -761,8 +781,8 @@
 </template>
 
 <script setup lang="ts">
-import { ref, reactive, watch, onMounted, inject } from 'vue'
-import { ctxUrl } from '@/assets/js/config'
+import { ref, reactive, watch, onMounted, onBeforeMount,inject } from 'vue'
+import { ctxUrl,resourceUrl } from '@/assets/js/config'
 import { useRouter, useRoute } from 'vue-router'
 import useClipboard from 'vue-clipboard3'
 const { toClipboard } = useClipboard()
@@ -876,15 +896,13 @@
 )
 
 let microApp = null // 寰簲鐢ㄥ疄渚�
+const bookName = ref('')
+const bookId = ref(1)
 onMounted(() => {
   // canvasWith.value = window.innerWidth - 540
   // canvasheight.value = window.innerHeight - 110
-  getNotesList() // 鑾峰彇楂樹寒
-  getlineHeightList() //鑾峰彇楂樹寒
-  getScribeList() //鑾峰彇鍒掔嚎
   getCatalogueData()
   getResourceData()
-  getScreenshotList()
   // setTimeout(() => {
   //   canvasWith.value = document.getElementById('container').offsetWidth
   //   canvasheight.value = document.getElementById('container').offsetHeight
@@ -903,17 +921,25 @@
   // 鍔犺浇寰簲鐢�
   microApp = loadMicroApp(microApps.book1, {
     sandbox: {
-      strictStyleIsolation: true,
-      experimentalStyleIsolation: true
+      // strictStyleIsolation: true,
+      // experimentalStyleIsolation: true
     }
   })
-
+  window.qiankunActions.onGlobalStateChange((state, prev) => {
+    bookName.value = state.bookName
+    bookId.value = state.bookId
+   
+  })
+ 
   window.qiankunActions.setGlobalState({
     state: 1, // 鍔犺浇瀛愬簲鐢�
-    windowSelection: (data) => { // 缁戝畾瀛愬簲鐢ㄩ�夋嫨鐩戝惉浜嬩欢
+    windowSelection: (data) => {
+      // 缁戝畾瀛愬簲鐢ㄩ�夋嫨鐩戝惉浜嬩欢
       console.log(data, '瀛愬簲鐢ㄩ�夋嫨')
+      getSelection(data)
     }
   })
+ 
 })
 
 watch(
@@ -926,11 +952,20 @@
     }
   }
 )
+watch(
+  () => bookId.value,
+  (val) => {
+    getNotesList() // 鑾峰彇绗旇
+    getlineHeightList() //鑾峰彇楂樹寒
+    getScribeList() //鑾峰彇鍒掔嚎
+    getScreenshotList() //鎴浘
+  }
+)
 //鑾峰彇鐩綍
 const catalogueData = ref([])
 const getCatalogueData = () => {
   axios
-    .get(ctxUrl + '/books/test/information.json')
+    .get(ctxUrl + '/information.json')
     .then(function (response) {
       var json = response.data
       // 澶勭悊鑾峰彇鍒扮殑json鏁版嵁
@@ -945,7 +980,6 @@
   label: 'label'
 }
 const handleNodeClick = (data) => {
-  console.log(data.id, 12)
   document.getElementById(data.id).scrollIntoView()
 }
 
@@ -983,7 +1017,7 @@
 const testWord = ref('') //word閾炬帴
 const getResourceData = () => {
   axios
-    .get(ctxUrl + '/books/test/resource.json')
+    .get(ctxUrl + '/resource.json')
     .then(function (response) {
       var json = response.data
       // 澶勭悊鑾峰彇鍒扮殑json鏁版嵁
@@ -1004,9 +1038,9 @@
   resourVisble.value = true
   resourType.value = data.type
   if (data.type == 'video') {
-    testVideo.value = ctxUrl + '/books/test/resourceData/' + data.name
+    testVideo.value = resourceUrl + '/resourceData/' + data.name
   } else if (data.type == 'word') {
-    testWord.value = ctxUrl + '/books/test/resourceData/' + data.name
+    testWord.value = resourceUrl + '/resourceData/' + data.name
   }
 }
 
@@ -1028,7 +1062,6 @@
       resourceDataList.value = resourceData.value.attachmentList
       break
   }
-  console.log(resourceDataList.value)
 }
 const searchBtn = () => {
   if (searchShow.value) {
@@ -1067,7 +1100,6 @@
 // 閫変腑鑿滃崟
 const activeMenu = ref(0)
 //璧勬簮绫诲瀷
-
 const resourceType = ref('default')
 // 鑿滃崟鐐瑰嚮
 const menuItemClick = (index) => {
@@ -1091,17 +1123,18 @@
 }
 //鍒锋柊褰撳墠椤甸潰
 const reload = () => {
-  if (microApp) {
-    microApp.unmount() // 鍗歌浇寰簲鐢�
-    microApp = loadMicroApp(microApps.book1, {
-      sandbox: {
-        strictStyleIsolation: true,
-        experimentalStyleIsolation: true
-      }
-    })
-  } else {
-    location.reload()
-  }
+  location.reload()
+  // if (microApp) {
+  //   microApp.unmount() // 鍗歌浇寰簲鐢�
+  //   microApp = loadMicroApp(microApps.book1, {
+  //     sandbox: {
+  //       strictStyleIsolation: true,
+  //       experimentalStyleIsolation: true
+  //     }
+  //   })
+  // } else {
+  //   location.reload()
+  // }
 }
 
 const selectResourceType = (type) => {
@@ -1154,9 +1187,15 @@
 })
 const fontSizeSelect = (item) => {
   settingForm.fontSizeActive = item.key
+  window.qiankunActions.setGlobalState({
+    fontSizeNum: settingForm.fontSizeActive, // 鍔犺浇瀛愬簲鐢�
+  })
 }
 const bgColorSelect = (item) => {
   settingForm.bgColorActive = item.key
+  window.qiankunActions.setGlobalState({
+    bgColor: settingForm.bgColorActive, // 鍔犺浇瀛愬簲鐢�
+  })
 }
 //绗旇棰滆壊绛涢��
 const searchClick = (item) => {
@@ -1407,13 +1446,12 @@
   }
 }
 const dragstart = (e) => {
-  console.log(e)
   floatingToolData.startclientx = e.clientX
   floatingToolData.startclienty = e.clientY
 }
 //鐢荤瑪鎿嶄綔鏍忎簨浠�
 const toolSelectData = reactive({
-  activeTool:'',
+  activeTool: '',
   fontSizeActive: '16',
   thicknessActive: '3', //鐢荤瑪閫変腑绮楃粏
   lineTypeActive: 'solid', //鐢荤瑪閫変腑绾跨被鍨�
@@ -1423,9 +1461,13 @@
   toolSelectData.activeTool = title
   switch (title) {
     case 'huabi':
-    init()
+      init()
       break
     case 'wenzi':
+      break
+    case 'tuichu':
+    canvasShow.value = false
+    floatingToolData.activeToolData = ''
       break
   }
 }
@@ -1453,7 +1495,6 @@
   canvas.value.freeDrawingBrush.color = toolSelectData.lineColorActive
   canvas.value.freeDrawingBrush.width = toolSelectData.thicknessActive
 }
-
 
 //鏍囩鏄剧ず闅愯棌
 const labelShow = (str) => {}
@@ -1496,7 +1537,7 @@
         setKeyRequests: [
           {
             domain: 'screenshot',
-            key: '2358',
+            key: bookId.value,
             value: JSON.stringify(screenshotList.value)
           }
         ]
@@ -1519,7 +1560,7 @@
     method: 'post',
     data: {
       domain: 'screenshot',
-      keys: ['2358']
+      keys: [bookId.value]
     }
   }).then((res) => {
     if (res && res.length > 0 && res[0].value) {
@@ -1535,6 +1576,7 @@
 //閫変腑鏂囧瓧宸ュ叿鏍�
 const selectText = ref('') //閫変腑鏂囧瓧
 const selectNode = ref(null)
+const selectPage = ref(1)
 const showToolBox = ref(false)
 const dialogToolData = reactive({
   left: 500,
@@ -1561,22 +1603,34 @@
   }
 }
 
-// const 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
-// }
+const 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
+}
+
+const getSelection =(data)=>{
+  if (data.txt) {
+    console.log(data.node,"data")
+      showToolBox.value = true
+      selectText.value = data.txt
+      selectNode.value = data.node.innerHTML
+      selectPage.value = data.page
+      dialogToolData.top = data.y
+      dialogToolData.left = data.x
+    }
+}
 
 const pageScroll = (e) => {
   showToolBox.value = false
@@ -1752,13 +1806,16 @@
 const clickSelect = (item) => {
   colorActive.value = item.key
   if (toolActive.value == '楂樹寒') {
-    dialogToolData.lineHeight.push({
+    let lineHeightData = {
       selectNode: selectNode.value,
       selectText: selectText.value,
+      selectPage: selectPage.value,
       color: colorActive.value,
       chapter: dialogToolData.chapter,
       createDate: new Date()
-    })
+    }
+    dialogToolData.lineHeight.push(lineHeightData)
+    console.log(dialogToolData.lineHeight,"鍓峮ode")
     request({
       url: '/identity/api/ApiAppUserSetKey',
       method: 'post',
@@ -1766,7 +1823,7 @@
         setKeyRequests: [
           {
             domain: 'highLight',
-            key: '2358',
+            key: bookId.value,
             value: JSON.stringify(dialogToolData.lineHeight)
           }
         ]
@@ -1782,6 +1839,7 @@
     dialogToolData.scribeList.push({
       selectNode: selectNode.value,
       selectText: selectText.value,
+      selectPage: selectPage.value,
       color: colorActive.value,
       chapter: dialogToolData.chapter,
       createDate: new Date()
@@ -1793,7 +1851,7 @@
         setKeyRequests: [
           {
             domain: 'underline',
-            key: '2358',
+            key: bookId.value,
             value: JSON.stringify(dialogToolData.scribeList)
           }
         ]
@@ -1812,12 +1870,18 @@
   const obj = {
     desc: formData.desc
   }
+  if(!colorActive.value){
+    ElMessage.error('璇烽�夋嫨绗旇棰滆壊!')
+    return
+  }
   if (!lock.value) {
     lock.value = true
     if (formData.desc.replace(/^\s*|\s*$/g, '')) {
       dialogToolData.notesList.push({
+        selectNode: selectNode.value,
         selectText: selectText.value,
         color: colorActive.value,
+        selectPage: selectPage.value,
         chapter: dialogToolData.chapter,
         createDate: new Date(),
         note: formData.desc.replace(/^\s*|\s*$/g, '')
@@ -1829,7 +1893,7 @@
           setKeyRequests: [
             {
               domain: 'notes',
-              key: '2358',
+              key: bookId.value,
               value: JSON.stringify(dialogToolData.notesList)
             }
           ]
@@ -1859,13 +1923,13 @@
     method: 'post',
     data: {
       domain: 'notes',
-      keys: ['2358']
+      keys: [bookId.value]
     }
   }).then((res) => {
     if (res && res.length > 0 && res[0].value) {
       dialogToolData.notesList = JSON.parse(res[0].value)
       let list = JSON.parse(res[0].value)
-      let textDom1 = document.getElementById('container')
+      let textDom1 = document.querySelector('.temp-book')
       if (list.length > 0) {
         list.forEach((item, index) => {
           item.createDate = moment(item.createDate).format('YYYY-MM-DD')
@@ -1887,15 +1951,19 @@
             }
           }
           //椤甸潰娣诲姞绗旇
-          let containerElement = document.createElement('span')
-          containerElement.style.textDecoration = 'underline'
-          containerElement.innerText = item.selectText
           let rReg1 = new RegExp(`${item.selectText}`, 'ig')
           let text1 = textDom1.innerHTML
-          let rHtml1 = ''
-          rHtml1 = text1.replace(
+          let nHtmlText1 = item.selectNode
+
+          let nHtml1 = ''
+          nHtml1 = nHtmlText1.replace(
             rReg1,
             `<span style="padding-bottom:2px; border-bottom: 2px solid;border-bottom-color:${item.color}" class="underline">${item.selectText}</span><img src="${biji1}" style="cursor: pointer" onclick="notesVisbleShow('${item.selectText}')"/>`
+          )
+          let rHtml1 = ''
+          rHtml1 = text1.replace(
+            nHtmlText1,
+            nHtml1
           )
           textDom1.innerHTML = rHtml1
         })
@@ -1912,26 +1980,29 @@
     method: 'post',
     data: {
       domain: 'underline',
-      keys: ['2358']
+      keys: [bookId.value]
     }
   }).then((res) => {
     if (res && res.length > 0 && res[0].value) {
       dialogToolData.scribeList = JSON.parse(res[0].value)
       scribeData.scribeDataList = JSON.parse(res[0].value)
-      let textDom1 = document.getElementById('container')
-      console.log(scribeData.scribeDataList, '鍒掔嚎')
+      let textDom1 = document.querySelector('.temp-book')
       if (scribeData.scribeDataList.length > 0) {
         for (let i = 0; i < scribeData.scribeDataList.length; i++) {
           let item = scribeData.scribeDataList[i]
-          let containerElement = document.createElement('span')
-          containerElement.style.textDecoration = 'underline'
-          containerElement.innerText = item.selectText
           let rReg1 = new RegExp(`${item.selectText}`, 'ig')
           let text1 = textDom1.innerHTML
+          let nHtmlText1 = item.selectNode
+          
+          let nHtml1 = ''
+          nHtml1 = nHtmlText1.replace(
+            rReg1,
+            `<el-popover placement="bottom" :width="100" trigger="click"><div><el-button onclick="deleteScribeShow('${item.selectText}')">鍒犻櫎</el-button></div><template #reference><span style="text-decoration:underline;text-decoration-style: wavy;text-underline-thickness:2px;text-decoration-color:${item.color};cursor: pointer">${item.selectText}</span></template></el-popover>`
+          )
           let rHtml1 = ''
           rHtml1 = text1.replace(
-            rReg1,
-            `<span style="text-decoration:underline;text-decoration-style: wavy;text-underline-thickness:2px;text-decoration-color:${item.color};cursor: pointer">${item.selectText}</span>`
+            nHtmlText1,
+            nHtml1
           )
           textDom1.innerHTML = rHtml1
         }
@@ -1947,26 +2018,31 @@
     method: 'post',
     data: {
       domain: 'highLight',
-      keys: ['2358']
+      keys: [bookId.value]
     }
   }).then((res) => {
     if (res && res.length > 0 && res[0].value) {
       dialogToolData.lineHeight = JSON.parse(res[0].value)
       scribeData.lineHeightList = JSON.parse(res[0].value)
       console.log(scribeData.lineHeightList, '楂樹寒')
-      let textDom = document.getElementById('container')
+      let textDom = document.querySelector('.temp-book')
+      console.log(textDom)
       if (scribeData.lineHeightList.length > 0) {
         for (let i = 0; i < scribeData.lineHeightList.length; i++) {
           let item = scribeData.lineHeightList[i]
-          let heightLightElement = document.createElement('i')
-          heightLightElement.style.backgroundColor = item.color
-          heightLightElement.innerText = item.selectText
           let rReg = new RegExp(`${item.selectText}`, 'ig')
           let text = textDom.innerHTML
-          let rHtml = ''
-          rHtml = text.replace(
+          let nHtmlText = item.selectNode
+          let nHtml = ''
+          nHtml = nHtmlText.replace(
             rReg,
             `<span style="background: ${item.color};padding: 2px;cursor: pointer">${item.selectText}</span>`
+          )
+          // nHtmlText = nHtml
+          let rHtml = ''
+          rHtml = text.replace(
+            nHtmlText,
+            nHtml
           )
           textDom.innerHTML = rHtml
         }
@@ -1980,7 +2056,13 @@
   addNoteVisble.value = true
   let notes = dialogToolData.notesList.find((item) => item.selectText == txt)
   formData.desc = notes.note
+  colorActive.value = notes.color
+  selectNode.value = notes.selectNode
+  selectText.value = notes.selectText
+  selectPage.value = notes.selectPage
+  dialogToolData.chapter = notes.chapter
 }
+
 window.deleteScribeShow = function (txt) {
   console.log(txt, 2)
   let list = scribeData.scribeDataList.filter((item) => item.selectText != txt)
@@ -1991,7 +2073,7 @@
       setKeyRequests: [
         {
           domain: 'underline',
-          key: '2358',
+          key: bookId.value,
           value: JSON.stringify(list)
         }
       ]
@@ -2011,7 +2093,7 @@
       setKeyRequests: [
         {
           domain: 'highLight',
-          key: '2358',
+          key: bookId.value,
           value: JSON.stringify(list)
         }
       ]
@@ -2030,7 +2112,9 @@
     dialogToolData.notesList.findIndex((itemData) => itemData.selectText == item.selectText),
     1
   )
+  selectNode.value = item.selectNode
   selectText.value = item.selectText
+  selectPage.value = item.selectPage
   colorActive.value = item.color
   dialogToolData.chapter = item.chapter
   formData.desc = item.note
@@ -2049,7 +2133,7 @@
         setKeyRequests: [
           {
             domain: 'notes',
-            key: '2358',
+            key: bookId.value,
             value: JSON.stringify(list)
           }
         ]
@@ -2058,6 +2142,15 @@
       ElMessage({
         message: '鍒犻櫎绗旇鎴愬姛!',
         type: 'success'
+      })
+      console.log(document.querySelectorAll('.underline'))
+      let list = document.querySelectorAll('.underline')
+      list.forEach(itemNode =>{
+        console.log(itemNode.nextSibling)
+        if(itemNode.innerText == item.selectText){
+          itemNode.removeAttribute('style');
+          itemNode.nextSibling?.remove()
+        }
       })
       getNotesList()
     })
@@ -2745,45 +2838,44 @@
           margin-right: 5px;
         }
       }
-      .floatToolItem:hover ,.floatToolActive{
+      .floatToolItem:hover,
+      .floatToolActive {
         background-color: #fff;
         color: #0093ff;
       }
     }
 
-
-    
-    .brushBox{
+    .brushBox {
       position: fixed;
       left: 500px;
-      bottom:20px;
+      bottom: 20px;
       z-index: 99;
       border-radius: 5px;
-      background:#fff;
+      background: #fff;
       // padding: 10px;
       overflow: hidden;
-      border:1px solid #0093FF;
-      .toolList{
-        display:flex;
+      border: 1px solid #0093ff;
+      .toolList {
+        display: flex;
         justify-content: center;
         align-items: center;
         .floatToolItem {
-          margin:10px;
-          width:48px;
+          margin: 10px;
+          width: 48px;
           border-radius: 5px;
-          text-align:center;
-          flex:1;
-          .imgBox{
-            height:22px;
-            width:22px;
-            text-align:center;
-            margin:0 auto;
-            margin-bottom:5px;
+          text-align: center;
+          flex: 1;
+          .imgBox {
+            height: 22px;
+            width: 22px;
+            text-align: center;
+            margin: 0 auto;
+            margin-bottom: 5px;
           }
         }
-        .layOutTool{
-          padding-left:15px;
-          border-left:1px solid #E0E0E0
+        .layOutTool {
+          padding-left: 15px;
+          border-left: 1px solid #e0e0e0;
         }
       }
     }
diff --git a/vite.config.ts b/vite.config.ts
index e11d194..4c0d644 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -12,7 +12,7 @@
     electron({
       // 閰嶇疆 Electron 鍏ュ彛鏂囦欢
       entry: 'electron-commonJS/main.js'
-    }),
+    }), 
   ],
   resolve: {
     alias: {

--
Gitblit v1.9.1