From f0043b45c87a81adbe605fda4001fae17bb72d8b Mon Sep 17 00:00:00 2001 From: "mi_yeqing.fang" Date: Mon, 31 Oct 2022 17:24:58 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BC=98=E5=8C=96=E5=85=83=E7=B4=A0?= =?UTF-8?q?=E6=9F=A5=E7=9C=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Web/packages/core/src/store/index.js | 5 +++ .../src/plugins/element/elementContainer.vue | 14 +++++++ .../web/src/plugins/element/elementTree.vue | 39 ++++++++++++++----- 3 files changed, 48 insertions(+), 10 deletions(-) diff --git a/Web/packages/core/src/store/index.js b/Web/packages/core/src/store/index.js index c977a1438..67635022e 100644 --- a/Web/packages/core/src/store/index.js +++ b/Web/packages/core/src/store/index.js @@ -19,6 +19,7 @@ const store = new Store({ mcHostWaitFetchRequestQueue:[], mcHostWaitFetchResponseQueue:[], isNative:false, + activeNodeKey: null, } }) @@ -51,6 +52,10 @@ export function toggleElement(element){ store.state.highlightElement = element; } +export function activeNodeTree(key){ + store.state.activeNodeKey = key; +} + export function addIndependPlugin(plugin){ // Unique Container let index = store.state.independPlugins.findIndex(ele => { diff --git a/Web/packages/web/src/plugins/element/elementContainer.vue b/Web/packages/web/src/plugins/element/elementContainer.vue index ed3613ebf..0522d15bb 100644 --- a/Web/packages/web/src/plugins/element/elementContainer.vue +++ b/Web/packages/web/src/plugins/element/elementContainer.vue @@ -36,6 +36,7 @@ import ElementDetails from './elementDetails.vue'; import ElementSnippet from './elementSnippet.vue'; // import MutationObserver from 'mutation-observer'; import { guid, $bus } from '../../assets/util'; +import { debounce } from "../../assets/util"; import { toggleElement } from '@dokit/web-core'; export default { components: { @@ -58,7 +59,11 @@ export default { active: 0, }; }, + created() { + this.watchWindowSize = debounce(this.watchWindowSize, 300); + }, mounted() { + window.addEventListener("resize", this.watchWindowSize); this.node = this.getNode(document.documentElement); this.observer = new MutationObserver((mutations) => { for (let i = 0; i < mutations.length; i++) { @@ -82,6 +87,7 @@ export default { }, }, destroyed() { + window.removeEventListener("resize", this.watchWindowSize); this.observer.disconnect(); }, watch: { @@ -324,6 +330,14 @@ export default { return attrStyle; } }, + watchWindowSize() { + this.node = this.getNode(document.documentElement); + this.oldElement = this.highlightElement + toggleElement(null); + this.$nextTick(() => { + toggleElement(this.oldElement); + }); + } }, }; diff --git a/Web/packages/web/src/plugins/element/elementTree.vue b/Web/packages/web/src/plugins/element/elementTree.vue index acadb2996..222605ee1 100644 --- a/Web/packages/web/src/plugins/element/elementTree.vue +++ b/Web/packages/web/src/plugins/element/elementTree.vue @@ -15,7 +15,7 @@ unfold ? 'dk-toggle' : '', ]" > - + <{{ node.tagName.toLowerCase() }} @@ -33,7 +33,7 @@ - </{{ node.tagName.toLowerCase() }}> @@ -46,6 +46,7 @@