全部组件

ProgressBar · ProgressRing

支持不确定状态的受控进度条和进度环。

WebReact 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

Prop类型默认值说明
valuenumber | null从 0 到 max 的进度;null 表示不确定。
maxnumber100表示完成的值。
colorstring'currentColor'填充颜色。
trackColorstring'#e7ece9'轨道颜色。
thicknessnumber8线条粗细,单位为像素。
direction'ltr' | 'rtl''ltr'从左(ltr)或从右(rtl)开始填充。
transitionTransitionspring时间曲线 { duration, easing } 或弹簧 { tempo: 'spring', spring }。弹簧被打断时会保留动量。

ProgressRing

Prop类型默认值说明
valuenumber | null从 0 到 max 的进度;null 表示不确定。
maxnumber100表示完成的值。
sizenumber96直径,单位为像素。
thicknessnumber8圆环粗细,单位为像素。
colorstring'currentColor'弧线颜色。
trackColorstring'#e7ece9'轨道颜色。
childrenReactNode显示在中间的标签。
transitionTransitionspring时间曲线 { duration, easing } 或弹簧 { tempo: 'spring', spring }。弹簧被打断时会保留动量。

其他 props 会传给渲染的元素,所以 className、style 和事件处理函数照常可用。

Web 与 React Native

ProgressRing 可以接收子元素作为中间的标签;ProgressBar 可以用 direction 从右侧开始填充。

同样的组件和 props 在 React Native 上也能用。

搜索

输入关键词搜索文档。