From 6850e8d780431a07ca64045642c2fa9806eaa056 Mon Sep 17 00:00:00 2001 From: mayinrain <624899618@qq.com> Date: Fri, 21 Feb 2025 15:15:21 +0800 Subject: [PATCH] =?UTF-8?q?upd:=20BCharts=E7=BB=84=E4=BB=B6=E6=94=AF?= =?UTF-8?q?=E6=8C=81series=E6=9B=B4=E5=A4=9A=E9=85=8D=E7=BD=AE=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/.vitepress/components/BCharts/use.vue | 2 +- packages/traction-widget/components/Charts/Charts.vue | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/docs/.vitepress/components/BCharts/use.vue b/docs/.vitepress/components/BCharts/use.vue index 53f4d9c..51f7cc2 100644 --- a/docs/.vitepress/components/BCharts/use.vue +++ b/docs/.vitepress/components/BCharts/use.vue @@ -20,7 +20,7 @@ const chartConfig = { itemStyle: { color: '#FEEEEE', borderColor: '#FF4D4F' - } + }, }, { field: 'major', diff --git a/packages/traction-widget/components/Charts/Charts.vue b/packages/traction-widget/components/Charts/Charts.vue index b3230fa..bd7f6a8 100644 --- a/packages/traction-widget/components/Charts/Charts.vue +++ b/packages/traction-widget/components/Charts/Charts.vue @@ -29,7 +29,7 @@ import { ref, onMounted, onUnmounted, watch, markRaw } from 'vue'; import { FDatePicker, FButton } from '@fesjs/fes-design'; import { ReloadOutlined } from '@fesjs/fes-design/icon'; -import type { EChartsOption, TooltipComponentFormatterCallback } from 'echarts'; +import type { EChartsOption, TooltipComponentFormatterCallback, BarSeriesOption } from 'echarts'; import echarts from './useEcharts'; import { getYear, getMonth, getDate, subDays, differenceInDays, @@ -47,11 +47,11 @@ interface BarStyle { interface ChartConfig { title: string; - series: { + series: (Pick> & { field: string; name: string; itemStyle: BarStyle; - }[]; + })[]; fetchData: (startTime: number, endTime: number) => Promise; xAxisField: string; tooltipFormatter?: (params: any[]) => string; @@ -151,7 +151,10 @@ const transformData = (data: any[]) => { itemStyle: item.itemStyle, emphasis: { focus: 'series' as const - } + }, + ...Object.entries(item) + .filter(([key]) => !['field', 'name', 'itemStyle'].includes(key)) + .reduce((acc, [key, value]) => ({ ...acc, [key]: value }), {}) })); return {