背景
最近在做项目分析时候,需要在控制台,需要将分析的结果数据打印table表显示,直接使用console.table,简直太糟糕了
1.不支持自动换行,只支持单行打印,如果过长导致table表错位
2.不支持识别\n标识,也是想自定义换行,都行不通
3.对中文太不友好了,只要有中文,就会导致table错位
4.table表的title不能自定义
5.table表自带索引,从0开始,不支持自定义或修改
需求
1.自定义title
2.能根据最大字数实现自动换行
3.能识别\n实现自动换行
4.能隐藏title
5.对中文显示友好
糟糕的效果图如下
使用 @xdooi/consoletable 包打印的table表效果图如下
@xdooi/consoletable 使用方法如下
安装依赖包
npm install --save @xdooi/consoletable
打印表格
// 基础用法:值中有 【\n】 时候,会换行显示
const consoletable = require('@xdooi/consoletable')
consoletable.drawTable([{
title:'consoleTable',
createTime:'2022-01-01',
author:'xdooi',
version:'v1.0.1',
desc:'新版本'
},{
title:'consoleTable',
createTime:'2022-01-02',
author:'xdooi',
version:'v1.0.2',
desc:'更新'
},
['consoleTable','2022-01-01','xdooi','v1.0.3','优化\n升级\n新功能']])
// 更多用法:使用自定义title,使用数据第一组的值设置为表格标题
const consoletable = require('consoletable')
const options = {head: 'def' }
consoletable.drawTable([{
title:'标题',
createTime:'时间',
author:'作者',
version:'版本',
desc:'描述'
},
{
title:'consoleTable',
createTime:'2022-01-01',
author:'xdooi',
version:'v1.0.1',
desc:'新版本,使用自定义头部'
},{
title:'consoleTable',
createTime:'2022-01-02',
author:'xdooi',
version:'v1.0.2',
desc:'更新'
},
['consoleTable','2022-01-01','xdooi','v1.0.3','优化\n升级\n新功能']], options)
// 更多用法:隐藏表格 头部
const consoletable = require('consoletable')
const options = { head: false }
consoletable.drawTable([{
title:'标题',
createTime:'时间',
author:'作者',
version:'版本',
desc:'隐藏头部,仅显示表格内容'
},{
title:'consoleTable',
createTime:'2022-01-01',
author:'xdooi',
version:'v1.0.3',
desc:'新版本,我的自动换行功能,当满足max值的之后自动换行'
}], options)
// 更多用法:设置最大字数,超过后会自动换行
const consoletable = require('consoletable')
const options = { max: 20 }
consoletable.drawTable([{
title:'consoleTable',
createTime:'2022-01-01',
author:'xdooi',
version:'v1.0.4',
desc:'新版本,我的自动换行功能,当满足max值的之后自动换行'
}], options)