diff --git a/package.json b/package.json index 6d025073..1440f39e 100644 --- a/package.json +++ b/package.json @@ -21,6 +21,7 @@ "axios": "^0.27.2", "color": "^4.2.3", "crypto-js": "^4.1.1", + "dom-helpers": "^5.2.1", "echarts-liquidfill": "^3.1.0", "echarts-stat": "^1.2.0", "echarts-wordcloud": "^2.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9fa763c3..8e95ed04 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -25,6 +25,7 @@ specifiers: commitlint: ^17.0.2 crypto-js: ^4.1.1 default-passive-events: ^2.0.0 + dom-helpers: ^5.2.1 echarts: ^5.3.2 echarts-liquidfill: ^3.1.0 echarts-stat: ^1.2.0 @@ -77,6 +78,7 @@ dependencies: axios: 0.27.2 color: 4.2.3 crypto-js: 4.1.1 + dom-helpers: 5.2.1 echarts-liquidfill: 3.1.0_echarts@5.3.3 echarts-stat: 1.2.0 echarts-wordcloud: 2.0.0_echarts@5.3.3 @@ -402,6 +404,13 @@ packages: - supports-color dev: true + /@babel/runtime/7.20.6: + resolution: {integrity: sha512-Q+8MqP7TiHMWzSfwiJwXCjyf4GYA4Dgw3emg/7xmwsdLJOZUp+nMqcOwOzzYheuM1rhDu8FSj2l0aoMygEuXuA==} + engines: {node: '>=6.9.0'} + dependencies: + regenerator-runtime: 0.13.11 + dev: false + /@babel/template/7.16.7: resolution: {integrity: sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==} engines: {node: '>=6.9.0'} @@ -1912,7 +1921,7 @@ packages: dev: true /csstype/2.6.20: - resolution: {integrity: sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/csstype/-/csstype-2.6.20.tgz} + resolution: {integrity: sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA==} dev: false /csstype/3.0.11: @@ -2065,6 +2074,13 @@ packages: resolution: {integrity: sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==} dev: true + /dom-helpers/5.2.1: + resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} + dependencies: + '@babel/runtime': 7.20.6 + csstype: 3.0.11 + dev: false + /dom-serializer/1.4.1: resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} dependencies: @@ -4462,6 +4478,10 @@ packages: strip-indent: 3.0.0 dev: true + /regenerator-runtime/0.13.11: + resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} + dev: false + /regexp.prototype.flags/1.4.3: resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==} engines: {node: '>= 0.4'} diff --git a/src/enums/editPageEnum.ts b/src/enums/editPageEnum.ts index 8baa4dcd..b28f732d 100644 --- a/src/enums/editPageEnum.ts +++ b/src/enums/editPageEnum.ts @@ -66,7 +66,8 @@ export enum WinKeyboard { ALT = ' alt', CTRL_SOURCE_KEY = 'control', SHIFT_SOURCE_KEY = 'shift', - ALT_SOURCE_KEY = 'alt' + ALT_SOURCE_KEY = 'alt', + SPACE = 'Space' } // Mac 键盘枚举 @@ -77,7 +78,8 @@ export enum MacKeyboard { ALT = '⌥', CTRL_SOURCE_KEY = '⌘', SHIFT_SOURCE_KEY = '⇧', - ALT_SOURCE_KEY = '⌥' + ALT_SOURCE_KEY = '⌥', + SPACE = 'Space' } // 同步状态枚举 diff --git a/src/store/modules/chartLayoutStore/chartLayoutStore.d.ts b/src/store/modules/chartLayoutStore/chartLayoutStore.d.ts index b1155ea5..abcef916 100644 --- a/src/store/modules/chartLayoutStore/chartLayoutStore.d.ts +++ b/src/store/modules/chartLayoutStore/chartLayoutStore.d.ts @@ -1,5 +1,5 @@ export enum ChartModeEnum { - SINGLE= 'single', + SINGLE = 'single', DOUBLE = 'double' } @@ -13,7 +13,8 @@ export enum ChartLayoutStoreEnum { CHARTS = 'charts', DETAILS = 'details', Chart_TYPE = 'chartType', - LAYER_TYPE = 'layerType' + LAYER_TYPE = 'layerType', + PERCENTAGE = 'percentage' } export interface ChartLayoutType { @@ -27,4 +28,6 @@ export interface ChartLayoutType { [ChartLayoutStoreEnum.Chart_TYPE]: ChartModeEnum // 层级展示方式 [ChartLayoutStoreEnum.LAYER_TYPE]: LayerModeEnum + // 当前正在加载的数量 + [ChartLayoutStoreEnum.PERCENTAGE]: number } diff --git a/src/store/modules/chartLayoutStore/chartLayoutStore.ts b/src/store/modules/chartLayoutStore/chartLayoutStore.ts index c50bd520..5aa5704e 100644 --- a/src/store/modules/chartLayoutStore/chartLayoutStore.ts +++ b/src/store/modules/chartLayoutStore/chartLayoutStore.ts @@ -24,6 +24,8 @@ export const useChartLayoutStore = defineStore({ chartType: ChartModeEnum.SINGLE, // 图层类型(默认图片) layerType: LayerModeEnum.THUMBNAIL, + // 当前加载数量 + percentage: 0, // 防止值不存在 ...storageChartLayout }), @@ -42,6 +44,9 @@ export const useChartLayoutStore = defineStore({ }, getLayerType(): LayerModeEnum { return this.layerType + }, + getPercentage(): number { + return this.percentage } }, actions: { @@ -54,6 +59,11 @@ export const useChartLayoutStore = defineStore({ setTimeout(() => { chartEditStore.computedScale() }, 500) + }, + setItemUnHandle(key: T, value: K): void { + this.$patch(state => { + state[key] = value + }) } } }) diff --git a/src/styles/common/mixins/mixins.scss b/src/styles/common/mixins/mixins.scss index 39374ff1..ec6f2ccd 100644 --- a/src/styles/common/mixins/mixins.scss +++ b/src/styles/common/mixins/mixins.scss @@ -17,7 +17,7 @@ } @mixin deep() { - :deep { + :deep() { @content; } } diff --git a/src/utils/utils.ts b/src/utils/utils.ts index c995002f..3fde53fe 100644 --- a/src/utils/utils.ts +++ b/src/utils/utils.ts @@ -250,15 +250,21 @@ export const objToCookie = (obj: RequestParamsObjType) => { * @returns */ export const setKeyboardDressShow = (keyCode?: number) => { - const code = new Map([[17, WinKeyboard.CTRL]]) + const code = new Map([ + [17, WinKeyboard.CTRL], + [32, WinKeyboard.SPACE] + ]) const dom = document.getElementById('keyboard-dress-show') if (!dom) return if (!keyCode) { + window.onKeySpacePressHold?.(false) dom.innerText = '' return } if (keyCode && code.has(keyCode)) { + if (keyCode == 32) window.onKeySpacePressHold?.(true) dom.innerText = `按下了「${code.get(keyCode)}」键` } } + diff --git a/src/views/chart/ContentBox/index.vue b/src/views/chart/ContentBox/index.vue index 826bbb85..8f7b5e5d 100644 --- a/src/views/chart/ContentBox/index.vue +++ b/src/views/chart/ContentBox/index.vue @@ -18,14 +18,14 @@ -
-