Преглед изворни кода

♻️ refactor(renderers): 移除全局动画进度变量并重构为函数参数

- 移除 `candle-renderer.ts`、`column-renderer.ts`、`line-renderer.ts`、`radar-renderer.ts` 和 `special-renderer.ts` 中声明的全局变量 `process` 和 `chartProcess`
- 将 `drawColumnDataPoints`、`drawAreaDataPoints` 和 `drawLineDataPoints` 函数的动画进度重构为函数参数 `process`,并设置默认值为1
- 更新函数内部调用,将硬编码的 `chartProcess` 替换为传入的 `process` 参数
- 更新函数注释,明确 `process` 参数的作用
yourname пре 3 недеља
родитељ
комит
18549afb88

+ 0 - 4
mini-ui-packages/mini-charts/src/lib/renderers/candle-renderer.ts

@@ -3,12 +3,8 @@
  *
  * 从 u-charts 核心库搬迁的K线图绘制相关函数
  */
-
 // @ts-nocheck - 由于从 u-charts 搬迁,类型系统不兼容,暂时禁用类型检查
 
-// 动画进度全局变量
-declare const process: number;
-
 import type { ChartOptions, UChartsConfig, SeriesItem } from '../data-processing/series-calculator';
 import { getDataPoints, getCandleDataPoints } from '../charts-data/basic-charts';
 import { splitPoints, createCurveControlPoints } from '../utils/misc';

+ 8 - 10
mini-ui-packages/mini-charts/src/lib/renderers/column-renderer.ts

@@ -67,23 +67,21 @@ export interface ColumnResult {
   eachSpacing: number;
 }
 
-// 声明全局变量
-declare const process: number;
-declare const chartProcess: any;
-
 /**
  * 绘制柱状图数据点
  * @param series 系列数据
  * @param opts 图表配置
  * @param config UCharts配置
  * @param context Canvas上下文
+ * @param process 动画进度(默认为1)
  * @returns 计算结果
  */
 export function drawColumnDataPoints(
   series: SeriesItem[],
   opts: ChartOptions,
   config: UChartsConfig,
-  context: CanvasContext
+  context: CanvasContext,
+  process = 1
 ): ColumnResult {
   const xAxisData = opts.chartData?.xAxisData;
   if (!xAxisData) {
@@ -161,7 +159,7 @@ export function drawColumnDataPoints(
           opts,
           config,
           zeroPoints,
-          chartProcess
+          process
         );
         const tooltipPoints = getStackDataPoints(
           data as number[],
@@ -173,7 +171,7 @@ export function drawColumnDataPoints(
           config,
           seriesIndex,
           series,
-          chartProcess
+          process
         );
         calPoints.push(tooltipPoints);
         points = fixColumeData(points, eachSpacing, series.length, seriesIndex, config, opts);
@@ -274,7 +272,7 @@ export function drawColumnDataPoints(
           config,
           seriesIndex,
           series,
-          chartProcess
+          process
         );
         calPoints.push(points);
         points = fixColumeStackData(points, eachSpacing, series.length, seriesIndex, config, opts, series);
@@ -403,7 +401,7 @@ export function drawColumnDataPoints(
             opts,
             config,
             zeroPoints,
-            chartProcess
+            process
           );
           const fixedPoints = fixColumeData(points, eachSpacing, series.length, seriesIndex, config, opts);
           drawColumePointText(fixedPoints, eachSeries, config, context, opts);
@@ -421,7 +419,7 @@ export function drawColumnDataPoints(
             config,
             seriesIndex,
             series,
-            chartProcess
+            process
           );
           drawColumePointText(points, eachSeries, config, context, opts);
           break;

+ 7 - 7
mini-ui-packages/mini-charts/src/lib/renderers/line-renderer.ts

@@ -42,23 +42,21 @@ export interface LineResult {
   eachSpacing: number;
 }
 
-// 声明全局变量
-declare const process: number;
-declare const chartProcess: any;
-
 /**
  * 绘制面积图数据点
  * @param series 系列数据
  * @param opts 图表配置
  * @param config UCharts配置
  * @param context Canvas上下文
+ * @param process 动画进度(默认为1)
  * @returns 计算结果
  */
 export function drawAreaDataPoints(
   series: SeriesItem[],
   opts: ChartOptions,
   config: UChartsConfig,
-  context: CanvasContext
+  context: CanvasContext,
+  process = 1
 ): LineResult {
   const areaOption = assign(
     {},
@@ -284,13 +282,15 @@ export function drawAreaDataPoints(
  * @param opts 图表配置
  * @param config UCharts配置
  * @param context Canvas上下文
+ * @param process 动画进度(默认为1)
  * @returns 计算结果
  */
 export function drawLineDataPoints(
   series: SeriesItem[],
   opts: ChartOptions,
   config: UChartsConfig,
-  context: CanvasContext
+  context: CanvasContext,
+  process = 1
 ): LineResult {
   const lineOption = assign(
     {},
@@ -350,7 +350,7 @@ export function drawLineDataPoints(
       opts,
       config,
       lineOption,
-      chartProcess
+      process
     );
     calPoints.push(points);
     const splitPointList = splitPoints(points, eachSeries);

+ 0 - 3
mini-ui-packages/mini-charts/src/lib/renderers/radar-renderer.ts

@@ -3,10 +3,7 @@
  *
  * 从 u-charts 核心库搬迁的雷达图绘制相关函数
  */
-
 // @ts-nocheck - 由于从 u-charts 搬迁,类型系统不兼容,暂时禁用类型检查
-// 动画进度全局变量
-declare const process: number;
 
 import type { ChartOptions, UChartsConfig, SeriesItem } from '../data-processing/series-calculator';
 import { getRadarDataPoints } from '../charts-data/radar-charts';

+ 0 - 3
mini-ui-packages/mini-charts/src/lib/renderers/special-renderer.ts

@@ -6,9 +6,6 @@
  */
 // @ts-nocheck - 由于从 u-charts 搬迁,类型系统不兼容,暂时禁用类型检查
 
-// 动画进度全局变量
-declare const process: number;
-
 import type { ChartOptions, UChartsConfig, SeriesItem } from '../data-processing/series-calculator';
 import { getDataPoints } from '../charts-data/basic-charts';
 import { getFunnelDataPoints } from '../charts-data/funnel-charts';