| | |
| | | </div> |
| | | </div> |
| | | <div class="tools-middle"> |
| | | <div v-for="dock in $store.state.desktop.minDocks" :key="dock.id" class="dock-item-wrap" :class="{'actived':dock.highlight}" @mouseover="screenShot(dock)"> |
| | | <div v-for="dock in $store.state.desktop.minDocks" :key="dock.id" class="dock-item-wrap" :class="{'actived':dock.highlight}" > |
| | | <a @click="dockClick(dock)"> |
| | | <img class="dock-item" :src="dock.src" :alt="dock.alt" /> |
| | | <img class="dock-shot" :src="dock.screenshot" v-if="dock.screenshot"/> |
| | |
| | | // '$store.state.desktop.frames':{ |
| | | // handler(n,o){ |
| | | // if(n){ |
| | | // debugger; |
| | | // ; |
| | | // n.forEach((item,index) => { |
| | | // if(item.order >= this.maxOrder){ |
| | | // this.maxOrderOne = item.id; |
| | |
| | | togglePreference() { |
| | | //this.$store.commit("desktop/togglePreference"); |
| | | //显示桌面,最小化已打开的应用 |
| | | debugger; |
| | | ; |
| | | this.$store.state.desktop.frames.forEach(frame => { |
| | | this.$store.commit('desktop/addMinDock', { |
| | | id: frame.id, |
| | |
| | | }) |
| | | }, |
| | | dockClick(dock) { |
| | | debugger |
| | | |
| | | if (dock.type === "1") { |
| | | window.open(dock.url); |
| | | } else if (dock.type === "2") { |
| | |
| | | } else if (dock.type === "3") { |
| | | this.$store.commit("desktop/resetMinFrame", dock.id); |
| | | //点击的iframe置顶并高亮 |
| | | debugger |
| | | this.$store.commit("desktop/refreshFrame", dock); |
| | | } |
| | | }, |
| | | screenShot(dock){ |
| | | debugger |
| | | //找到当前的iframe |
| | | let curIframe = Array.from(document.querySelectorAll('iframe')).find(iframe => iframe.src.indexOf(dock.url) >= 0); |
| | | //保存当前应用快照 |
| | | html2canvas(curIframe.contentWindow.document.body, { |
| | | dpi: window.devicePixelRatio * 4, |
| | | logging: true, //查看html2canvas内部执行流程 |
| | | removeContainer: true, |
| | | imageTimeout: 0, |
| | | useCORS: true, //开启跨域配置 |
| | | //allowTaint: true |
| | | }).then(canvas => { |
| | | let shotSrc = canvas.toDataURL(); |
| | | // this.$store.commit('desktop/addMinDock', { |
| | | // id: dock.id, |
| | | // src: dock.icon, |
| | | // alt: dock.title, |
| | | // type: "3", |
| | | // screenshot: shotSrc |
| | | // }); |
| | | this.$store.commit('desktop/shotscreen', {id:dock.id, src:shotSrc}); |
| | | |
| | | }).catch(e => { |
| | | this.$store.commit('desktop/shotscreen', {id:dock.id, src:''}); |
| | | }); |
| | | toolHover(dock){ |
| | | //this.$parent.screenShot(dock) |
| | | }, |
| | | |
| | | toLogout(){ |
| | | this.$confirm("提示:确定退出吗?", { |
| | | center: true, |