| | |
| | | default-expand-all="true" |
| | | :data="catalogueData" |
| | | :props="defaultProps" |
| | | v-if="catalogueData.length > 0" |
| | | @node-click="handleNodeClick" |
| | | /> |
| | | <div v-if="catalogueData.length == 0"> |
| | | <el-empty :image-size="60" description="暂无数据" /> |
| | | </div> |
| | | </div> |
| | | <!-- 笔记 --> |
| | | <div class="notesBox" v-if="activeMenu == 1"> |
| | |
| | | </div> |
| | | <div |
| | | class="noteText hover 123456" |
| | | @click="jumpContent('note' + index)" |
| | | @click="jumpContent(item)" |
| | | :style="{ |
| | | background: |
| | | item.color == '#F5E12A' |
| | |
| | | : item.color |
| | | }" |
| | | > |
| | | <div class="con hover" @click="jumpContent('note' + index)"> |
| | | <div class="con hover"> |
| | | {{ item.note }} |
| | | </div> |
| | | </div> |
| | |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <el-button @click="screenshotClose">取 消</el-button> |
| | | <el-button type="primary" @click="addScreenshot">确 定</el-button> |
| | | <el-button type="primary" @click="addScreenshot" :loading="screenshotLoading">确 定</el-button> |
| | | </span> |
| | | </template> |
| | | </el-dialog> |
| | |
| | | // experimentalStyleIsolation: true |
| | | } |
| | | }) |
| | | |
| | | window.qiankunActions.onGlobalStateChange((state, prev) => { |
| | | console.log('父层state变化', state) |
| | | bookName.value = state.bookName |
| | | bookId.value = state.bookId |
| | | window.qiankunState = state; |
| | | window.qiankunState = state |
| | | }) |
| | | |
| | | // 定义父层方法 |
| | | console.log(window.qiankunActions); |
| | | console.log(window.qiankunActions) |
| | | window.qiankunActions.setGlobalState({ |
| | | state: 1, // 加载子应用 |
| | | windowSelection: (data) => { |
| | |
| | | const confirmDialog = ref<Boolean>(false) |
| | | const screenshotVisble = ref<Boolean>(false) |
| | | const nameData = ref('') //截图名称 |
| | | const screenshotLoading = ref(false) |
| | | const urlData = ref('') //截图base64 |
| | | const screenshotList = ref([]) |
| | | const screenshotData = ref([]) |
| | | |
| | | //浮窗工具栏点击事件 |
| | | const floatItemHandle = (item) => { |
| | |
| | | canvasShow.value = true |
| | | toolSelectData.activeTool = 'huabi' |
| | | break |
| | | case '标注': |
| | | break |
| | | case '标签': |
| | | reMark() |
| | | break |
| | | case '截屏': |
| | | jitT() |
| | |
| | | toolSelectData.fontSizeActive = str |
| | | } |
| | | |
| | | //标签显示隐藏 |
| | | //标注显示隐藏 |
| | | const labelShow = (str) => {} |
| | | |
| | | //标签 |
| | | const reMark =() => { |
| | | |
| | | |
| | | } |
| | | //截图 |
| | | //截图事件 |
| | | function jitT() { |
| | |
| | | console.log(base64) |
| | | floatingToolData.activeToolData = '' |
| | | } |
| | | //保存截图 |
| | | const addScreenshot = () => { |
| | | if (nameData.value) { |
| | | screenshotList.value.push({ |
| | | screenshotData.value.push({ |
| | | createDate: new Date(), |
| | | imgUrl: urlData.value, |
| | | name: nameData.value |
| | | }) |
| | | screenshotLoading.value = true |
| | | request({ |
| | | url: '/identity/api/ApiAppUserSetKey', |
| | | method: 'post', |
| | |
| | | { |
| | | domain: 'screenshot', |
| | | key: bookId.value, |
| | | value: JSON.stringify(screenshotList.value) |
| | | value: JSON.stringify(screenshotData.value) |
| | | } |
| | | ] |
| | | } |
| | | }).then((res) => { |
| | | screenshotLoading.value = false |
| | | getScreenshotList() |
| | | nameData.value = '' |
| | | urlData.value = '' |
| | | floatingToolData.activeToolData = '' |
| | | screenshotVisble.value = false |
| | | }).catch(function (error) { |
| | | screenshotLoading.value = false |
| | | }) |
| | | } else { |
| | | ElMessage.error('截图名称不能为空!') |
| | |
| | | }).then((res) => { |
| | | if (res && res.length > 0 && res[0].value) { |
| | | screenshotList.value = JSON.parse(res[0].value) |
| | | screenshotData.value = JSON.parse(res[0].value) |
| | | } |
| | | }) |
| | | } |
| | | //查看截图 |
| | | const getCapture = (item) => { |
| | | imgUrl.value = item.imgUrl |
| | | confirmDialog.value = true |
| | | } |
| | | //删除截图 |
| | | const deleteScreenshot = (item) => { |
| | | let list = screenshotList.value.filter((itemData) => itemData.imgUrl !== item.imgUrl) |
| | | request({ |
| | | url: '/identity/api/ApiAppUserSetKey', |
| | | method: 'post', |
| | | data: { |
| | | setKeyRequests: [ |
| | | { |
| | | domain: 'screenshot', |
| | | key: bookId.value, |
| | | value: JSON.stringify(list) |
| | | } |
| | | ] |
| | | } |
| | | }).then((res) => { |
| | | ElMessage({ |
| | | message: '删除截图成功!', |
| | | type: 'success' |
| | | }) |
| | | getScreenshotList() |
| | | }) |
| | | } |
| | | |
| | | //选中文字工具栏 |
| | |
| | | domain: 'notes', |
| | | 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.querySelector('.temp-book') |
| | | if (list.length > 0) { |
| | | list.forEach((item, index) => { |
| | | item.createDate = moment(item.createDate).format('YYYY-MM-DD') |
| | | if (searchText.value) { |
| | | searchText.value = searchText.value.replace(/^\s*|\s*$/g, '') |
| | | let text = searchText.value.replace(/^\s*|\s*$/g, '') |
| | | if (item.text.indexOf(text) > -1) { |
| | | }) |
| | | .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.querySelector('.temp-book') |
| | | if (list.length > 0) { |
| | | list.forEach((item, index) => { |
| | | item.createDate = moment(item.createDate).format('YYYY-MM-DD') |
| | | if (searchText.value) { |
| | | searchText.value = searchText.value.replace(/^\s*|\s*$/g, '') |
| | | let text = searchText.value.replace(/^\s*|\s*$/g, '') |
| | | if (item.text.indexOf(text) > -1) { |
| | | if (menuState.notesColor == 'all') { |
| | | scribeData.noteList.push(item) |
| | | } else if (menuState.notesColor == item.color) { |
| | | scribeData.noteList.push(item) |
| | | } |
| | | } |
| | | } else { |
| | | if (menuState.notesColor == 'all') { |
| | | scribeData.noteList.push(item) |
| | | } else if (menuState.notesColor == item.color) { |
| | | scribeData.noteList.push(item) |
| | | } |
| | | } |
| | | } else { |
| | | if (menuState.notesColor == 'all') { |
| | | scribeData.noteList.push(item) |
| | | } else if (menuState.notesColor == item.color) { |
| | | scribeData.noteList.push(item) |
| | | } |
| | | } |
| | | //页面添加笔记 |
| | | let rReg1 = new RegExp(`${item.selectText}`, 'ig') |
| | | let text1 = textDom1.innerHTML |
| | | let nHtmlText1 = item.selectNode |
| | | //页面添加笔记 |
| | | let rReg1 = new RegExp(`${item.selectText}`, 'ig') |
| | | let text1 = textDom1.innerHTML |
| | | 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="notesline">${item.selectText}</span><img src="${biji1}" style="cursor: pointer" onclick="notesVisbleShow('${item.selectText}')"/>` |
| | | ) |
| | | let rHtml1 = '' |
| | | rHtml1 = text1.replace(nHtmlText1, nHtml1) |
| | | textDom1.innerHTML = rHtml1 |
| | | }) |
| | | let nHtml1 = '' |
| | | nHtml1 = nHtmlText1.replace( |
| | | rReg1, |
| | | `<span style="padding-bottom:2px; border-bottom: 2px solid;border-bottom-color:${item.color}" class="notesline">${item.selectText}</span><img src="${biji1}" style="cursor: pointer" onclick="notesVisbleShow('${item.selectText}')"/>` |
| | | ) |
| | | let rHtml1 = '' |
| | | rHtml1 = text1.replace(nHtmlText1, nHtml1) |
| | | textDom1.innerHTML = rHtml1 |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | scribeData.loading = false |
| | | }) |
| | | scribeData.loading = false |
| | | }) |
| | | .catch((err) => { |
| | | scribeData.loading = false |
| | | }) |
| | | } |
| | | //划线 |
| | | const getScribeList = () => { |
| | |
| | | } |
| | | } |
| | | |
| | | const jumpContent = (id) => { |
| | | debugger |
| | | //笔记跳转 |
| | | const jumpContent = (item) => { |
| | | console.log(item) |
| | | if (window.qiankunState && window.qiankunState.gotoPage) window.qiankunState.gotoPage(5, 100) |
| | | } |
| | | |
| | | //笔记编辑 |
| | | const update = (item, type) => { |
| | | dialogToolData.notesList.splice( |
| | | dialogToolData.notesList.findIndex((itemData) => itemData.selectText == item.selectText), |
| | |
| | | } |
| | | } |
| | | |
| | | //删除截图 |
| | | const deleteScreenshot = (item) => { |
| | | let list = screenshotList.value.filter((itemData) => itemData.imgUrl !== item.imgUrl) |
| | | request({ |
| | | url: '/identity/api/ApiAppUserSetKey', |
| | | method: 'post', |
| | | data: { |
| | | setKeyRequests: [ |
| | | { |
| | | domain: 'screenshot', |
| | | key: bookId.value, |
| | | value: JSON.stringify(list) |
| | | } |
| | | ] |
| | | } |
| | | }).then((res) => { |
| | | ElMessage({ |
| | | message: '删除截图成功!', |
| | | type: 'success' |
| | | }) |
| | | getScreenshotList() |
| | | }) |
| | | } |
| | | |
| | | //内容区域顶部显示 |
| | | |
| | | const headerData = reactive({ |