From 61b2ab254391003413ba6b5e3ce4b2f85cd2de9b Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Tue, 31 Aug 2021 15:57:14 +0800 Subject: [PATCH 1/4] =?UTF-8?q?feat:=20=E4=BB=AA=E8=A1=A8=E6=9D=BF?= =?UTF-8?q?=E6=96=B0=E5=A2=9Etabs=E9=80=89=E9=A1=B9=E5=8D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../canvas/custom-component/component-list.js | 25 ++++++ .../src/components/widget/DeWidget/DeTabs.vue | 76 +++++++++++++++++++ .../src/views/panel/AssistComponent/index.vue | 2 +- 3 files changed, 102 insertions(+), 1 deletion(-) create mode 100644 frontend/src/components/widget/DeWidget/DeTabs.vue diff --git a/frontend/src/components/canvas/custom-component/component-list.js b/frontend/src/components/canvas/custom-component/component-list.js index 0e1d8d6a0b..4b7903ce00 100644 --- a/frontend/src/components/canvas/custom-component/component-list.js +++ b/frontend/src/components/canvas/custom-component/component-list.js @@ -27,6 +27,14 @@ export const assistList = [ label: '矩形', icon: 'iconfont icon-juxing', defaultClass: 'text-filter' + }, + { + id: '10006', + component: 'de-tabs', + type: 'de-tabs', + label: '选项卡', + icon: 'iconfont icon-juxing', + defaultClass: 'text-filter' } ] @@ -139,6 +147,23 @@ const list = [ borderRadius: '' } }, + { + id: '10006', + component: 'de-tabs', + label: '选项卡', + propValue: '', + icon: 'juxing', + type: 'de-tabs', + style: { + width: 200, + height: 200, + borderStyle: 'solid', + borderWidth: 1, + borderColor: '#000000', + backgroundColor: '#ffffff', + borderRadius: 0 + } + }, { id: '20001', component: 'picture-add', diff --git a/frontend/src/components/widget/DeWidget/DeTabs.vue b/frontend/src/components/widget/DeWidget/DeTabs.vue new file mode 100644 index 0000000000..0fb6a815eb --- /dev/null +++ b/frontend/src/components/widget/DeWidget/DeTabs.vue @@ -0,0 +1,76 @@ + + + + + diff --git a/frontend/src/views/panel/AssistComponent/index.vue b/frontend/src/views/panel/AssistComponent/index.vue index 01866467c1..9a5b4a3ade 100644 --- a/frontend/src/views/panel/AssistComponent/index.vue +++ b/frontend/src/views/panel/AssistComponent/index.vue @@ -61,7 +61,7 @@ import { commonStyle, commonAttr } from '@/components/canvas/custom-component/co import generateID from '@/components/canvas/utils/generateID' export default { - name: 'FilterGroup', + name: 'AssisComponent', data() { return { assistList, From f81e65aa6f8f73a4336c537a811a49b82383f828 Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Wed, 22 Sep 2021 17:52:53 +0800 Subject: [PATCH 2/4] =?UTF-8?q?feat:=20tabs=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + .../src/components/widget/DeWidget/DeTabs.vue | 181 ++++++++++++++++-- frontend/src/views/panel/ViewSelect/index.vue | 22 ++- 3 files changed, 191 insertions(+), 13 deletions(-) diff --git a/.gitignore b/.gitignore index 7647865be8..d7a4223552 100644 --- a/.gitignore +++ b/.gitignore @@ -40,6 +40,7 @@ yarn-error.log* pnpm-debug.log* # Editor directories and files +.lh .idea .vscode *.suo diff --git a/frontend/src/components/widget/DeWidget/DeTabs.vue b/frontend/src/components/widget/DeWidget/DeTabs.vue index 0fb6a815eb..8e20216a3c 100644 --- a/frontend/src/components/widget/DeWidget/DeTabs.vue +++ b/frontend/src/components/widget/DeWidget/DeTabs.vue @@ -1,21 +1,91 @@ diff --git a/frontend/src/views/panel/ViewSelect/index.vue b/frontend/src/views/panel/ViewSelect/index.vue index 696f36b242..8afb58649e 100644 --- a/frontend/src/views/panel/ViewSelect/index.vue +++ b/frontend/src/views/panel/ViewSelect/index.vue @@ -2,7 +2,7 @@ - + - + 新建 @@ -20,6 +20,7 @@ @@ -64,6 +66,12 @@ import { tree, findOne } from '@/api/panel/view' export default { name: 'ViewSelect', + props: { + selectModel: { + type: Boolean, + default: false + } + }, data() { return { templateFilterText: '', @@ -126,6 +134,16 @@ export default { }, newChart() { this.$emit('newChart') + }, + checkChanged(node, status) { + this.$refs.templateTree.setCheckedNodes([]) + if (status.checkedKeys && status.checkedKeys.length > 0) { + this.$refs.templateTree.setCheckedNodes([node]) + } + }, + getCurrentSelected() { + const nodes = this.$refs.templateTree.getCheckedNodes(true, false) + return nodes } } From 7dac4702c868a2a83bb14af205b4beb706ebc59d Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Thu, 23 Sep 2021 15:30:11 +0800 Subject: [PATCH 3/4] =?UTF-8?q?feat:=20=E4=BB=AA=E8=A1=A8=E6=9D=BFtabs?= =?UTF-8?q?=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/Editor/ComponentWrapper.vue | 1 + .../canvas/components/Editor/SettingMenu.vue | 4 + .../canvas/components/Editor/index.vue | 2 +- .../canvas/custom-component/component-list.js | 7 + .../src/components/widget/DeWidget/DeTabs.vue | 164 +++++++++++------- 5 files changed, 112 insertions(+), 66 deletions(-) diff --git a/frontend/src/components/canvas/components/Editor/ComponentWrapper.vue b/frontend/src/components/canvas/components/Editor/ComponentWrapper.vue index b789d127d8..0652e2b47a 100644 --- a/frontend/src/components/canvas/components/Editor/ComponentWrapper.vue +++ b/frontend/src/components/canvas/components/Editor/ComponentWrapper.vue @@ -24,6 +24,7 @@ :out-style="config.style" :style="getComponentStyleDefault(config.style)" :prop-value="config.propValue" + :is-edit="false" :element="config" :search-count="searchCount" /> diff --git a/frontend/src/components/canvas/components/Editor/SettingMenu.vue b/frontend/src/components/canvas/components/Editor/SettingMenu.vue index a7c2c2a277..6972fcbb89 100644 --- a/frontend/src/components/canvas/components/Editor/SettingMenu.vue +++ b/frontend/src/components/canvas/components/Editor/SettingMenu.vue @@ -12,6 +12,7 @@ {{ $t('panel.upComponent') }} {{ $t('panel.downComponent') }} {{ $t('panel.linkage_setting') }} + 新增Tab @@ -137,6 +138,9 @@ export default { getViewLinkageGather(requestInfo).then(rsp => { this.$store.commit('setLinkageInfo', rsp.data) }) + }, + addTab() { + bus.$emit('add-new-tab') } } } diff --git a/frontend/src/components/canvas/components/Editor/index.vue b/frontend/src/components/canvas/components/Editor/index.vue index 0065e5f052..54b1489995 100644 --- a/frontend/src/components/canvas/components/Editor/index.vue +++ b/frontend/src/components/canvas/components/Editor/index.vue @@ -630,7 +630,7 @@ export default { this.$refs.wrapperChild[index].openChartDetailsDialog() }, resizestop(index, item) { - if (item.type === 'view') { + if (item.type === 'view' || item.type === 'de-tabs') { this.$refs.wrapperChild[index].chartResize() } } diff --git a/frontend/src/components/canvas/custom-component/component-list.js b/frontend/src/components/canvas/custom-component/component-list.js index 4b7903ce00..f000f45bf3 100644 --- a/frontend/src/components/canvas/custom-component/component-list.js +++ b/frontend/src/components/canvas/custom-component/component-list.js @@ -162,6 +162,13 @@ const list = [ borderColor: '#000000', backgroundColor: '#ffffff', borderRadius: 0 + }, + options: { + tabList: [{ + title: 'Tab1', + name: '1', + content: null + }] } }, { diff --git a/frontend/src/components/widget/DeWidget/DeTabs.vue b/frontend/src/components/widget/DeWidget/DeTabs.vue index 8e20216a3c..399b9a89b4 100644 --- a/frontend/src/components/widget/DeWidget/DeTabs.vue +++ b/frontend/src/components/widget/DeWidget/DeTabs.vue @@ -1,37 +1,41 @@