前言
使用nodeJs进行脚手架开发时可能会用到这些开源库,还有时间格式化开源库,记录一下。
ora
# 作用
用于在控制台显示加载中的效果,类似于前端页面的loading效果。
# 下载
npm install ora@5.x
# 基础用法
const ora = require('ora');
const spinner = ora('Loading unicorns').start();
spinner.start(); //开始
setTimeout(() => {
spinner.color = 'yellow';
spinner.text = 'Loading rainbows';
}, 5000);
setTimeout(() => {
spinner.stop() // 加载完成
}, 10000)
figlet
# 作用
直接在终端打印 ascii 字体,非常炫酷
# 安装
npm install figlet
# 基础使用
const figlet = require('figlet');
figlet('Hello World', function(err, data) {
if (err) {
console.log('Something went wrong...');
console.dir(err);
return;
}
console.log(data)
});
# 结合chalk打印不同颜色字体
const { promisify } = require("util"); // 系统库
const figlet = promisify(require("figlet"));
const chalk = require("chalk");
async function test() {
const data = await figlet("Hello World");
console.log(chalk.rgb(40, 156, 193).visible(data));
}
test();
# 深入使用
1. 可以和chalk结合使用,打印不同颜色的字体
2. 再深入的使用(更细微的操作)直接去看官网介绍:https://www.npmjs.com/package/figlet
logSymbols
# 作用
各种日志级别的彩色符号
# 安装
npm install log-symbols@4.x
const logSymbols = require('log-symbols');
# 使用
console.log(logSymbols.success, 'Finished successfully!');
console.log(logSymbols.info, 'Finished successfully!');
console.log(logSymbols.warning, 'Finished successfully!');
console.log(logSymbols.error, 'Finished successfully!');
day.js
# 用法
1. 用做时间格式转换器
2. moment.js在2020年停止开发了,只有维护了
3. dayjs可以完全取代moment.js,dayjs只有2k,而moment.js太大了
4. 支持ts的引入写法要去看官网
# 安装
npm install dayjs
import dayjs from 'dayjs'
# 使用
console.log(dayjs().format());
console.log(dayjs().format('DD/MM/YYYY'));
console.log(dayjs(1318781876406).format('YYYY-MM-DD HH:mm:ss'));
console.log(dayjs.unix(1318781876).format('YYYY-MM-DD HH:mm:ss'));
console.log(dayjs.unix(1318781876).format('YYYY年MM月DD日 HH:mm:ss'));
data-fns
# 用法
1. 和dayjs一样
# 安装
npm install date-fns
import { format } from 'date-fns'
# 使用
console.log(format(new Date(), 'yyyy-MM-dd HH:mm:ss'));