进度
显示一个指示器,展示任务的完成进度,通常以进度条的形式显示。
功能
- 为辅助技术提供上下文,以便读取任务进度。
安装
从命令行安装此组件。
sh
$ npm add reka-ui
组成
导入所有部分并将其组合。
vue
<script setup>
import { ProgressIndicator, ProgressRoot } from 'reka-ui'
</script>
<template>
<ProgressRoot>
<ProgressIndicator />
</ProgressRoot>
</template>
无障碍访问
遵循 progressbar
角色要求。
API 参考
根
包含所有进度部分。
属性 | 默认 | 类型 |
---|---|---|
as | 'div' | AsTag | 组件 此组件应渲染为的元素或组件。可通过 |
asChild | 布尔值 更改默认渲染元素为作为子项传递的元素,合并它们的属性和行为。 阅读我们的 组合指南了解更多详情。 | |
getValueLabel | isNumber(value) ? `${Math.round((value / max) * DEFAULT_MAX)}%` : undefined | ((value: number | null, max: number) => string) 一个函数,用于获取人类可读格式的无障碍标签文本。 如果未提供,则值标签将以数字值占最大值的百分比形式读取。 |
getValueText | ((value: number | null, max: number) => string) 一个函数,用于获取表示当前值的、人类可读格式的无障碍值文本。 | |
max | DEFAULT_MAX | 数字 最大进度值。 |
modelValue | number | null 进度值。可以绑定为 |
事件触发 | 载荷 |
---|---|
update:max | [value: number] 当最大值改变时调用的事件处理程序 |
update:modelValue | [value: string[]] 当进度值改变时调用的事件处理程序 |
插槽(默认) | 载荷 |
---|---|
modelValue | number | null | undefined 当前输入值 |
方法 | 类型 |
---|---|
getValueLabel | (value: number | null | undefined, max: number) => string | undefined 一个函数,用于获取人类可读格式的无障碍标签文本。 如果未提供,则值标签将以数字值占最大值的百分比形式读取。 |
数据属性 | 值 |
---|---|
[data-state] | "complete" | "indeterminate" | "loading" |
[data-value] | 当前值 |
[data-max] | 最大值 |
指示器
用于视觉显示进度。它还使进度可供辅助技术访问。
属性 | 默认 | 类型 |
---|---|---|
as | 'div' | AsTag | 组件 此组件应渲染为的元素或组件。可通过 |
asChild | 布尔值 更改默认渲染元素为作为子项传递的元素,合并它们的属性和行为。 阅读我们的 组合指南了解更多详情。 |
数据属性 | 值 |
---|---|
[data-state] | "complete" | "indeterminate" | "loading" |
[data-value] | 当前值 |
[data-max] | 最大值 |