From 6f701720484c7e2e0742352497f2d83b813c14bd Mon Sep 17 00:00:00 2001 From: wangjiahao <1522128093@qq.com> Date: Mon, 21 Jul 2025 15:37:03 +0800 Subject: [PATCH] refactor: view preview --- .../src/assets/svg/icon_chart_preview.svg | 3 + .../views/dashboard/canvas/ComponentBar.vue | 55 +++++++++++++++---- 2 files changed, 46 insertions(+), 12 deletions(-) create mode 100644 frontend/src/assets/svg/icon_chart_preview.svg diff --git a/frontend/src/assets/svg/icon_chart_preview.svg b/frontend/src/assets/svg/icon_chart_preview.svg new file mode 100644 index 00000000..c571fb8b --- /dev/null +++ b/frontend/src/assets/svg/icon_chart_preview.svg @@ -0,0 +1,3 @@ + + + diff --git a/frontend/src/views/dashboard/canvas/ComponentBar.vue b/frontend/src/views/dashboard/canvas/ComponentBar.vue index 683abd99..0c7b1df3 100644 --- a/frontend/src/views/dashboard/canvas/ComponentBar.vue +++ b/frontend/src/views/dashboard/canvas/ComponentBar.vue @@ -3,6 +3,10 @@ import { toRefs } from 'vue' import icon_delete from '@/assets/svg/icon_delete.svg' import { Icon } from '@/components/icon-custom' import { useEmitt } from '@/utils/useEmitt.ts' +import { useI18n } from 'vue-i18n' +import icon_more_outlined from '@/assets/svg/icon_more_outlined.svg' +import icon_chart_preview from '@/assets/svg/icon_chart_preview.svg' +const { t } = useI18n() const props = defineProps({ active: { @@ -26,6 +30,10 @@ const props = defineProps({ const { configItem } = toRefs(props) +const doPreview = () => { + // do preview +} + const doDeleteComponent = (e: MouseEvent) => { e.stopPropagation() e.preventDefault() @@ -36,11 +44,23 @@ const doDeleteComponent = (e: MouseEvent) => { @@ -54,16 +74,27 @@ const doDeleteComponent = (e: MouseEvent) => { display: flex; z-index: 5; cursor: pointer !important; - .handle-icon { - color: #646a73; - } - &:hover { - background-color: #e8f0fe; - color: var(--el-color-primary); - } } .bar-hidden { display: none; } + +.bar-more { + width: 24px; + height: 24px; + color: rgba(31, 35, 41, 1); + border-radius: 6px; + background: rgba(255, 255, 255, 1); + border: 1px solid rgba(217, 220, 223, 1); + padding: 8px; + + &:hover { + background-color: rgba(245, 246, 247, 1); + } + + &:active { + background-color: rgba(245, 246, 247, 0.5); + } +}