网站首页 > 基础教程 正文
这篇文章我们介绍一个工具——cli-table3模块,它有什么用呢?
如果你使用过pm2,你肯定知道它在启动之后会在控制台展现一个表格用于输出进程信息,如下图,
不知道大家在看见这个表格的时候有没有很好奇这个表格是如何生成的?我们在开发一个cli的时候也能不能生成这样一个表格呢?对于前端来说在页面中写一个表格那是so easy,用table标签即可,在控制台生成表格就要用到cli-table3模块。
使用介绍
如图2所示,表格每一列都有一个头,它可以用Table构造函数的head属性设置,colWidths属性可以用来设置表格每一列的宽度。
表格的实例拥有和数组类似的API,比如push、unshift、splice等,可以用它们来修改表格中的数据。如上图,使用push方法添加了两个数组,每个数组就是一行数据,数组的每个元素就是每列的数据。
如图3所示,如果表格只有两列,push的数据为对象也是可以的,对象的key-value分别为第一列和第二列的值。
如图4所示,如果你想让每一行也有一个头,可以按照key-value(array)的格式传递数据,key就是每一行的头,value对于的数组就是一行中的数据。
如图5所示,表格的边框也是可以自定义的,不过还是挺复杂的,如果要调试的话,需要准备点眼药水。
总结
pm2使用的是cli-table-redemption模块,这个模块fork于cli-table,区别在于前者增加了几个数组方法,换了一个颜色设置的模块,其他几乎一样。如果你在开发cli工具时有输出表格的需要,可以考虑使用它。当然,如果你时间充足,你也可以使用console.log打印一个表格。
喜欢我的文章就关注我吧,有问题可以发表评论,我们一起学习,共同成长!
猜你喜欢
- 2025-05-08 最全的 Vue 面试题+详解答案(vue的一些面试题)
- 2025-05-08 Array类型简介(array常用的几种方法)
- 2025-05-08 2021最全VUE面试题,奥利给(vue 面试题 2021)
- 2025-05-08 Vue3基础难点总结(vue3技巧)
- 2025-05-08 使用Axios 拦截器解决「 前端并发冲突 」 问题
- 2025-05-08 浅析vue封装自定义插件(vue自己封装组件)
- 2025-05-08 perl基础——数组(perl数组初始化)
- 2025-05-08 ES6史上最全数JS数组方法合集-02-数组操作
- 2025-05-08 3个 Vue $set 的应用场景(vue中的set方法)
- 2025-05-08 「2022」打算跳槽涨薪,必问面试题及答案——VUE3 篇
- 最近发表
-
- 掌握SpringBoot-2.3的容器探针:实战篇
- kubernetes基础知识之驱逐节点(k8s驱逐节点后恢复)
- Linux环境中制作网络哨兵Sentinel Docker镜像
- k8s之配置CNI网络(k8s 网络配置)
- docker实战之:镜像更新(docker 镜像升级替换)
- 离线在docker镜像方式部署ragflow0.17.2
- Linux日常小技巧Docker打包(docker打包lnmp)
- 使用dockerfile构建docker镜像(docker通过dockerfile构建镜像命令)
- 「云原生」Containerd ctr,crictl 和 nerdctl 命令介绍与实战操作
- Kylin安装Dify(kylin安装部署)
- 标签列表
-
- jsp (69)
- pythonlist (60)
- gitpush (78)
- gitreset (66)
- python字典 (67)
- dockercp (63)
- gitclone命令 (63)
- dockersave (62)
- pythonif (68)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- console.table (62)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)