@cloud-ru/ds-slider

中文文档
1.0.19发布于 2026/11/11Apache-2.0TypeScriptESM + CJS近 30 天下载 4951

Ползунок для выбора числового значения или диапазона — с метками, tooltip на ручке и опциональным равномерным распределением нелинейных значений.

原始使用文档
文档目录8 节
  1. Когда использовать
  2. Установка
  3. Примеры использования
  4. Базовый слайдер
  5. Диапазон
  6. С метками
  7. Disabled
  8. Props

Slider

@cloud-ru/ds-slider — Ползунок для выбора числового значения или диапазона — с метками, tooltip на ручке и опциональным равномерным распределением нелинейных значений.

Ползунок для выбора одного значения или диапазона [min, max]. Поверх rc-slider — те же клавиатурные шорткаты и семантика, но с токенами дизайн-системы и расширениями: handleTip с форматированием и marksEqualSpacing для нелинейных наборов значений.

Когда использовать

  • Выбор числового параметра в известном диапазоне: цена, громкость, приоритет.
  • Фильтры «от…до» (range).
  • Управление параметрами, где ценно видеть относительное положение (например, прозрачность).

Когда не стоит: точный ввод числа (лучше InputNumber), бинарные переключения (Switch), выбор из дискретных вариантов без порядка (RadioGroup).

Установка

pnpm add @cloud-ru/ds-slider
import { Slider } from '@cloud-ru/ds-slider'

Примеры использования

Базовый слайдер

Одно значение, без меток

import { Slider } from '@cloud-ru/ds-slider';

export function Basic() {
  return <Slider min={0} max={100} defaultValue={40} />;
}

Диапазон

range + handleTip — видно оба значения

import { Slider } from '@cloud-ru/ds-slider';

export function Range() {
  return <Slider range min={0} max={100} defaultValue={[20, 70]} handleTip />;
}

С метками

import { Slider } from '@cloud-ru/ds-slider';

export function Marks() {
  return (
    <Slider
      min={0}
      max={100}
      step={25}
      marks={{ 0: '0', 25: '25', 50: '50', 75: '75', 100: '100' }}
      defaultValue={50}
      handleTip
    />
  );
}

Disabled

import { Slider } from '@cloud-ru/ds-slider';

export function Disabled() {
  return <Slider min={0} max={100} defaultValue={40} disabled />;
}

Props

SliderProps

PropTypeDefaultDescription
activeHandleRender((origin: React.ReactElement<React.HTMLAttributes<HTMLDivElement>>, props: RenderProps) => React.ReactElement) | undefined—
allowCrossboolean | undefined—
ariaLabelForHandlestring | string[] | undefined—
ariaLabelledByForHandlestring | string[] | undefined—
ariaRequiredboolean | undefined—
ariaValueTextFormatterForHandleAriaValueFormat | AriaValueFormat[] | undefined—
autoFocusboolean | undefined—
classNamestring | undefined—
countnumber | undefined—
data-test-idstring—Стабильный идентификатор для e2e/tests
defaultValuenumber | number[] | undefined—
disabledboolean | undefined—
dotsboolean | undefined—
handleTipboolean—Показывать значение в тултипе на ручке
idstring | undefined—
includedboolean | undefined—
keyboardboolean | undefined—
marksRecord<string | number, React.ReactNode | MarkObj> | undefined—
marksEqualSpacingboolean—Включение равномерного распределения при нелинейных значениях меток.
maxnumber | undefined—
minnumber | undefined—
onAfterChange((value: number | number[]) => void) | undefined—
onBeforeChange((value: number | number[]) => void) | undefined—
onBlur((e: React.FocusEvent<HTMLDivElement>) => void) | undefined—
onChange((value: number | number[]) => void) | undefined—
onChangeComplete((value: number | number[]) => void) | undefined—
onFocus((e: React.FocusEvent<HTMLDivElement>) => void) | undefined—
pushablenumber | boolean | undefined—
rangeboolean | RangeConfig | undefined—
reverseboolean | undefined—
startPointnumber | undefined—
stepnumber | null | undefined—
tabIndexnumber | number[] | undefined—
tipFormatter((value: string | number) => ReactNode)—Форматирование подсказки; по умолчанию — сырое значение
trackboolean | undefined—
valuenumber | number[] | undefined—

版本与发布记录

@cloud-ru/ds-slider 共发布 71 个版本,首次发布于 2026/08/18;过去 12 个月发布了 71 个版本。

版本发布日期距今
1.0.19latest2026/11/11今天
1.0.19-preview-e8fe6b56.0preview2026/11/11今天
1.0.19-preview-c0e895ed.02026/11/11今天
1.0.19-preview-90b10112.02026/11/11今天
1.0.19-preview-fd7dd437.02026/11/101 天前
1.0.19-preview-9a75a2a9.02026/11/101 天前

关于 @cloud-ru/ds-slider 的常见问题

@cloud-ru/ds-slider 是什么?

Ползунок для выбора числового значения или диапазона — с метками, tooltip на ручке и опциональным равномерным распределением нелинейных значений.

如何安装 @cloud-ru/ds-slider?

在项目目录运行 npm install @cloud-ru/ds-slider,或使用 pnpm add / yarn add / bun add。

@cloud-ru/ds-slider 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@cloud-ru/ds-slider 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@cloud-ru/ds-slider 可以商用吗?

@cloud-ru/ds-slider 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@cloud-ru/ds-slider 的下载量有多少?

根据 npm 官方下载统计,@cloud-ru/ds-slider 在 2026/10/10 – 2026/11/08 这 30 天内被下载 4,951 次,日均约 165 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cloud-ru/ds-slider 还在维护吗?

最新版本 1.0.19 发布于 2026/11/11(今天);至今共发布 71 个版本,其中过去 12 个月发布了 71 个;首次发布于 2026/08/18。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。