美文网首页
node 打印彩色 log

node 打印彩色 log

作者: HoPGoldy | 来源:发表于2019-06-12 16:35 被阅读0次

开门见山,直接把封装好的代码放出来,把这段代码放到自己项目里就可以输出彩色 log 了,这段代码使用了es6语法,使用前请确认自己的node版本:

function log(msg, { title='TITLE', color='white' } = {}) {
    const COLOR_CODE = ['black', 'red', 'green', 'yellow', 'blue', 'magenta', 'cyan', 'white'].indexOf(color)
    if (COLOR_CODE >= 0) {
        const TITLE_STR = title ? `\x1b[4${COLOR_CODE};30m ${title} \x1b[0m ` : ''
        console.log(`${TITLE_STR}\x1b[3${COLOR_CODE}m${msg}\x1b[;0m`)
    }
    else {
        console.log(title ? `${title} ${msg}` : msg)
    }
}
效果

用法很简单,如下所示,除了第一个参数日志内容以外都可以缺省:

log('日志内容', {
    title: '指定标题',
    color: '指定颜色'
})

颜色的对应表如下,默认颜色为白色,可以自己指定,如果输入的颜色不支持则显示未白色:

颜色 对应编码
黑色 'black'
红色 'red'
绿色 'green'
黄色 'yellow'
蓝色 'blue'
洋红色 'magenta'
青色 'cyan'
白色 'white'

你也可以把先把参数默认值修改为自己需要的标题和颜色:

修改默认值

下面是一些实例

log('这是一条简单的log\n')

log('可以指定标题\n', { title: '标题'})

log('也可以不要标题\n', { title: ''})

log('这是一条指定了颜色的log\n', { color: 'blue'})

const COLORS = [ 'black', 'red', 'green', 'yellow', 'blue', 'magenta', 'cyan', 'white' ]

COLORS.map(color => log('这些颜色都是可以的\n', { title: color, color: color}))
效果

相关文章

网友评论

      本文标题:node 打印彩色 log

      本文链接:https://www.haomeiwen.com/subject/fbylfctx.html