Все компоненты

ProgressBar · ProgressRing

Управляемые полосы и кольца прогресса с неопределённым состоянием.

ВебReact NativeПрогресс

Попробуйте

Подготовка примера…

Кратчайшее использование

Upload.jsx
<ProgressBar value={progress} max={100} />
<ProgressRing value={progress} size={96}>{progress}%</ProgressRing>
<ProgressBar value={null} /> {/* indeterminate */}

Что он берёт на себя

  • Значения ограничиваются 0…max, а null показывает неопределённую волну или вращающуюся дугу.
  • Новое значение посреди движения продолжается со своей скоростью.
  • Одна непрерывная линия или дуга, никаких прыгающих сегментов.
  • Пружина с duration заканчивается ровно в это время.

Для чего подходит

  • Загрузка файла.
  • Использованное место из квоты.
  • Прогресс оформления заказа.

Props

ProgressBar

ПропТипПо умолчаниюОписание
valuenumber | nullПрогресс от 0 до max; null — неопределённое состояние.
maxnumber100Значение, означающее завершение.
colorstring'currentColor'Цвет заливки.
trackColorstring'#e7ece9'Цвет дорожки.
thicknessnumber8Толщина линии в пикселях.
direction'ltr' | 'rtl''ltr'Заполнение слева (ltr) или справа (rtl).
transitionTransitionspringКривая timing { duration, easing } или пружина { tempo: 'spring', spring }. При прерывании пружины сохраняют инерцию.

ProgressRing

ПропТипПо умолчаниюОписание
valuenumber | nullПрогресс от 0 до max; null — неопределённое состояние.
maxnumber100Значение, означающее завершение.
sizenumber96Диаметр в пикселях.
thicknessnumber8Толщина кольца в пикселях.
colorstring'currentColor'Цвет дуги.
trackColorstring'#e7ece9'Цвет дорожки.
childrenReactNodeПодпись в центре.
transitionTransitionspringКривая timing { duration, easing } или пружина { tempo: 'spring', spring }. При прерывании пружины сохраняют инерцию.

Остальные props передаются отрендеренному элементу, поэтому className, style и обработчики событий работают как обычно.

Веб и React Native

ProgressRing принимает дочерние элементы для подписи в центре; ProgressBar принимает direction, чтобы заполняться справа.

Те же компоненты и props работают в React Native.

Поиск

Начните вводить, чтобы искать в документации.