Progress 进度条

概述

展示操作或任务的当前进度,比如上传文件。

注意:非 template/render 模式下,需使用 i-progress

代码示例

Progress 进度条 - 图1

基本用法

处在不同状态下的进度条,当 percent 为 100 时,自动将状态置为 success。

  1. <template>
  2. <Progress :percent="25" />
  3. <Progress :percent="45" status="active" />
  4. <Progress :percent="65" status="wrong" />
  5. <Progress :percent="100" />
  6. <Progress :percent="25" hide-info />
  7. </template>
  8. <script>
  9. export default {
  10. }
  11. </script>

Progress 进度条 - 图2

垂直方向

设置属性 vertical 将以垂直方向显示。

  1. <template>
  2. <div style="height: 100px;">
  3. <Progress vertical :percent="25" />
  4. <Progress vertical :percent="45" status="active" />
  5. <Progress vertical :percent="65" status="wrong" />
  6. <Progress vertical :percent="100" />
  7. <Progress vertical :percent="25" hide-info />
  8. </div>
  9. </template>
  10. <script>
  11. export default {
  12. }
  13. </script>

Progress 进度条 - 图3

配合外部组件使用

通过数据的联动和逻辑控制,实现动态效果。

  1. <template>
  2. <Progress :percent="percent" />
  3. <ButtonGroup size="large">
  4. <Button icon="ios-add" @click="add"></Button>
  5. <Button icon="ios-remove" @click="minus"></Button>
  6. </ButtonGroup>
  7. </template>
  8. <script>
  9. export default {
  10. data () {
  11. return {
  12. percent: 0
  13. }
  14. },
  15. methods: {
  16. add () {
  17. if (this.percent >= 100) {
  18. return false;
  19. }
  20. this.percent += 10;
  21. },
  22. minus () {
  23. if (this.percent <= 0) {
  24. return false;
  25. }
  26. this.percent -= 10;
  27. }
  28. }
  29. }
  30. </script>

Progress 进度条 - 图4

自定义更多样式

通过自定义slot和属性stroke-width改变进度条效果。

  1. <template>
  2. <Progress :percent="25" :stroke-width="5" />
  3. <Progress :percent="100">
  4. <Icon type="checkmark-circled"></Icon>
  5. <span>成功</span>
  6. </Progress>
  7. </template>
  8. <script>
  9. export default {
  10. }
  11. </script>

Progress 进度条 - 图5

分段进度条

标准的进度条。

  1. <template>
  2. <Tooltip content="3 done / 3 in progress / 4 to do" style="width: 100%">
  3. <Progress :percent="60" :success-percent="30" />
  4. </Tooltip>
  5. </template>
  6. <script>
  7. export default {
  8. }
  9. </script>

API

Progress props

属性说明类型默认值
percent百分比Number0
status状态,可选值为normalactivewrongsuccessStringnormal
stroke-width进度条的线宽,单位 pxNumber10
stroke-color 3.3.0进度条的颜色String-
hide-info隐藏数值或状态图标Booleanfalse
vertical是否在垂直方向显示Booleanfalse
success-percent已完成的分段百分比Number0

Progress slot

名称说明
自定义显示状态内容