diff --git a/common/changes/@visactor/vchart/feat-scrollbar-autovisible_2025-07-31-08-52.json b/common/changes/@visactor/vchart/feat-scrollbar-autovisible_2025-07-31-08-52.json new file mode 100644 index 0000000000..22ff95774e --- /dev/null +++ b/common/changes/@visactor/vchart/feat-scrollbar-autovisible_2025-07-31-08-52.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@visactor/vchart", + "comment": "feat: scrollbar support auto visible. close #3972", + "type": "none" + } + ], + "packageName": "@visactor/vchart" +} \ No newline at end of file diff --git a/packages/vchart/src/component/data-zoom/data-filter-base-component.ts b/packages/vchart/src/component/data-zoom/data-filter-base-component.ts index 7f91ad32f3..83a7e0aece 100644 --- a/packages/vchart/src/component/data-zoom/data-filter-base-component.ts +++ b/packages/vchart/src/component/data-zoom/data-filter-base-component.ts @@ -28,7 +28,8 @@ import { minInArray, maxInArray, abs, - last + last, + throttle } from '@visactor/vutils'; // eslint-disable-next-line no-duplicate-imports import type { IFilterMode } from './interface'; @@ -64,6 +65,8 @@ export abstract class DataFilterBaseComponent void; + // 是否为自动模式 protected _auto?: boolean; protected _fixedBandSize?: number; @@ -448,14 +451,14 @@ export abstract class DataFilterBaseComponent this.hide(), 300); + this.event.on(dragEnd, () => { + this._throttledHide(); + }); + } } updateLayoutAttribute(): void { @@ -1038,6 +1051,10 @@ export abstract class DataFilterBaseComponent boolean; + /** + * 仅在画布交互展示组件 + * @since 2.0.3 + */ + autoVisible?: boolean; } export interface IRoamScrollSpec extends IRoamSpec {