如何在控制檯打印出一個表格?cli-table3瞭解一下

這篇文章我們介紹一個工具——cli-table3模塊,它有什麼用呢?

如果你使用過pm2,你肯定知道它在啟動之後會在控制檯展現一個表格用於輸出進程信息,如下圖,

如何在控制檯打印出一個表格?cli-table3瞭解一下

圖1

不知道大家在看見這個表格的時候有沒有很好奇這個表格是如何生成的?我們在開發一個cli的時候也能不能生成這樣一個表格呢?對於前端來說在頁面中寫一個表格那是so easy,用table標籤即可,在控制檯生成表格就要用到cli-table3模塊。

使用介紹

如何在控制檯打印出一個表格?cli-table3瞭解一下

圖2

如圖2所示,表格每一列都有一個頭,它可以用Table構造函數的head屬性設置,colWidths屬性可以用來設置表格每一列的寬度。

表格的實例擁有和數組類似的API,比如push、unshift、splice等,可以用它們來修改表格中的數據。如上圖,使用push方法添加了兩個數組,每個數組就是一行數據,數組的每個元素就是每列的數據。

如何在控制檯打印出一個表格?cli-table3瞭解一下

圖3

如圖3所示,如果表格只有兩列,push的數據為對象也是可以的,對象的key-value分別為第一列和第二列的值。

如何在控制檯打印出一個表格?cli-table3瞭解一下

圖4

如圖4所示,如果你想讓每一行也有一個頭,可以按照key-value(array)的格式傳遞數據,key就是每一行的頭,value對於的數組就是一行中的數據。

如何在控制檯打印出一個表格?cli-table3瞭解一下

圖5

如圖5所示,表格的邊框也是可以自定義的,不過還是挺複雜的,如果要調試的話,需要準備點眼藥水。

總結

pm2使用的是cli-table-redemption模塊,這個模塊fork於cli-table,區別在於前者增加了幾個數組方法,換了一個顏色設置的模塊,其他幾乎一樣。如果你在開發cli工具時有輸出表格的需要,可以考慮使用它。當然,如果你時間充足,你也可以使用console.log打印一個表格。

喜歡我的文章就關注我吧,有問題可以發表評論,我們一起學習,共同成長!


分享到:


相關文章: