0.0.3-beta.2 • Published 2 years ago
@serverless-devs/progress-bar v0.0.3-beta.2
下载(@serverless-devs/progress-bar)
安装
$ npm install @serverless-devs/progress-bar --save基本使用
import ProgressBar, { ProgressType } from '@serverless-devs/progress-bar';
const bar = new ProgressService(
ProgressType.Loading,
{
total: 1000,
}
);
for (let i = 0; i < 1000; i += 50) {
bar.update(i);
}
bar.complete();参数解析
import ProgressBar, { ProgressType } from '@serverless-devs/progress-bar';
const result = new ProgressService(
type,
options,
format,
);| 参数 | 说明 | 类型 | 必填 | 默认值 |
|---|---|---|---|---|
| type | 进度条的显示方式 | ProgressType.Bar:总尺寸已知的进度条; ProgressType.Loading:总大小未知的加载样式 | 是 | - |
| options | 进度条的选项 | Options | ProgressType.Bar 时必填 | - |
| format | 进度条格式, 详见format | String | 否 | - |
Options
| 参数 | 说明 | 类型 | 必填 | 默认值 |
|---|---|---|---|---|
| total | 要完成的数据总数 | number | 是 | ProgressType.Loading 时默认 100 |
| curr | 当前已完成索引 | number | 否 | - |
| width | 进度条显示宽度 | number | 否 | {total} |
| renderThrottle | 更新之间的最短时间(以毫秒为单位) | number | 否 | 16 |
| stream | 输出流 | NodeJS.WritableStream | 否 | {process.stderr} |
| head | 头部字符, 默认为完成字符 | string | 是 | {complete} |
| complete | 完成字符 | string | 否 | = |
| incomplete | 未完成字符 | string | 否 | - |
| callback | 进度条完成时调用 | Function | 否 | - |
Format 简述
type 取值 ProgressType.Bar 时默认为 Loading ${green(':loading')} ((:bar)) :current/:total(Bytes) :percent :etas
type 取值 ProgressType.Loading 时默认为 Loading ${green(':loading')} ((:bar)) :etas
解析一下这段文字 Loading ${green(':loading')} ((:bar)) :current/:total(Bytes) :percent :etas:
Loading 是一个显示前缀,可以替换为一些固定的文案。green() 是引入的 chalk, 显示一下颜色效果:loading 是 ['⣴', '⣆', '⢻', '⢪', '⢫'] 交替显示的一个动态效果((:bar)) 是显示进度条,由参数 options.total 控制总长度,使用 result.update(curr) 修改显示完成度。:current 显示当前完成度:total 要完成的数据总数:percent 完成的百分比:etas 估计完成时间(以秒为单位):elapsed 经过的时间(以秒为单位):rate 每秒刻度数
result
result.update
更新进度状态
接受参数为 number 类型
返回值 无
示例:
result.update(50)result.terminate
中断进度条显示,并在上面写一条消息(此条信息不会被删除)
接受参数 string
返回值 无
示例:
result.interrupt('终')result.terminate
终止显示
接受参数 无
返回值 无
示例:
result.terminate()result.complete
获取完成状态
接受参数 无
返回值 boolean
示例:
const complete = result.complete()result.curr
获取当前已完成索引
接受参数 无
返回值 number
示例:
const curr = result.curr()result.total
获取要完成的数据总数
接受参数 无
返回值 number
示例:
const total = result.total()