@kai-peng/log
Version:
在您的终端上以样式显示日志消息:-)。使用调试级别启用或禁用日志消息。
261 lines (215 loc) • 6.33 kB
Markdown
<p align="center">
<br>
<img src="https://codexhelp.com/log-beautify/logo.png" alt="log-beautify">
<br>
<br>
</p>
# log-beautify
在您的终端上以样式显示日志消息:-)。使用调试级别启用或禁用日志消息。
> 来源于 [log-beautify](https://www.npmjs.com/package/log-beautify),优点:
> 1. TypeScript 支持
> 2. 无用的文件不会被打进 npm 包
# Installation
```bash
npm install @kai-peng/log-beautify
```
# Usage
```js
const log = require('log-beautify')
log.trace('Trace') //将级别更改为使用 trace。
log.success('Success')
log.ok('Ok') // success 别称
log.debug('Debug')
log.info('Info')
log.warning('Warning')
log.warn('Warn') //warning 别称
log.error('Error')
```
# Use case :-)
<p align="center">
<img src="https://codexhelp.com/log-beautify/code-marvel.png" alt="log-beautify">
<img src="https://codexhelp.com/log-beautify/terminal-marvel.png" alt="log-beautify">
<img src="https://codexhelp.com/log-beautify/browser-marvel.png" alt="log-beautify">
<br>
</p>
# API
### Log methods
- `log.success()` _(文本颜色)_
- `log.success_()` _(背景颜色)_
- `log.ok()` _(log.success() 别称)_
- `log.ok_()` _(log.success\_() 别称)_
- `log.debug()`
- `log.debug_()`
- `log.info()`
- `log.info_()`
- `log.warning()`
- `log.warning_()`
- `log.warn()` _(log.warning() 别称)_
- `log.warn_()` _(log.warning\_() 别称)_
- `log.error()`
- `log.error_()`
- `log.show()`_(默认 console.log())_
您可以创建自己的日志方法,例如:
```js
log.setColors({
custom_: 'green',
})
log.setSymbols({
custom_: '✅ ',
})
//Now you can use it
log.custom_('Server listening on port 3000 ')
```
<p align="center">
<br>
<img src="https://codexhelp.com/log-beautify/log-beautify-custom.png" alt="log-beautify">
<br>
<br>
</p>
### Log levels
全局级别为: 1
<br>
新日志方法的默认级别为: 1
<br>
默认级别
```js
{
silent: -1,//隐藏所有 log
trace: 0,
success: 1,
debug: 2,
info: 3,
warning: 4,
error: 5,
}
```
### Config
- `log.useSymbols = true` _(启用或禁用图标)_
- `log.useLabels = true` _(启用或禁用标签)_
- `log.setColors({})` _(添加或更改颜色)_
- `log.setSymbols({})` _(添加或更改符号)_
- `log.setLabels({})` _(添加或更改标签)_
- `log.setTextColors({})` _(更改背景日志的文本颜色)_
- `log.setLevel(1)` _(更改全局级别,默认为 1)_
- `log.setLevel(1, 'namespace')` _(log.setNamespaceLevel() 别名)_
- `log.setNamespaceLevel(1, 'namespace')` _(创建带有命名空间的级别,并在当前文件中使用它,全局级别将被忽略)_
- `log.namespace('namespace')` _(log.useNamespace() 别名)_
- `log.useNamespace('namespace')` _(在当前文件中使用命名空间的级别,全局级别将被忽略。您可以使用在其他文件中创建的命名空间)_
- `log.setLocalLevel(1)` _(创建仅在当前文件中使用的级别,全局级别将被忽略)_
- `log.setLevels({})` _(添加或更改级别)_
### Colors
您可以使用以下颜色格式(使用字符串):
- `keyword` 例如: `"red"` _(black,white,red,green,yellow,magenta,cyan,gray)_
- `hex` 例如: `"#FFF000"`
- `rgb` 例如: `"rgb(255, 255, 255)"`
- `hsl` 例如: `"hsl(0, 100%, 50%)"`
- `hsv` 例如: `"hsv(330, 93%, 98%)"`
- `hwb` 例如: `"hwb(0, 100%, 0%)"`
# 例子
```js
/**
|--------------------------------------------------
| 禁用图标
|--------------------------------------------------
*/
log.useSymbols = false
/**
|--------------------------------------------------
| 禁用标签
|--------------------------------------------------
*/
log.useLabels = false
/**
|--------------------------------------------------
| 改变颜色
|--------------------------------------------------
*/
log.setColors({
success: '#00FF00',
error_: 'rgb(191,0,96)',
info_: 'cyan',
})
/**
|--------------------------------------------------
| 添加或更改新的日志方法
|--------------------------------------------------
*/
//When you add a color, the method will automatically be created.
log.setColors({
danger: '#FF8000',
danger_: 'hsl(310, 99%, 57%)',
saved: 'green',
})
//Now you can use log.danger() and log.danger_() and log.saved()
/**
|--------------------------------------------------
| 添加或者更改图标
|--------------------------------------------------
*/
log.setSymbols({
danger: '⛔ ',
ok: '👍 ',
saved: '✅ ',
})
/**
|--------------------------------------------------
| 添加或者改变标签
|--------------------------------------------------
*/
log.setLabels({
warning: 'WARNING!!!',
})
/**
|--------------------------------------------------
| 添加或更改背景日志的文本颜色
|--------------------------------------------------
*/
log.setTextColors({
error_: 'black',
info_: 'black',
})
/**
|--------------------------------------------------
| 添加或者更改日志级别
|--------------------------------------------------
*/
log.setLevels({
fatal: 6,
custom: 'info', //use info level
})
/**
|--------------------------------------------------
| 改变全局级别. 2 = "debug"
|--------------------------------------------------
*/
log.setLevel(2)
//log.setLevel('debug');
/**
|--------------------------------------------------
| 添加级别 "info = 3" 以仅在当前文件中使用,全局级别将被忽略
|--------------------------------------------------
*/
log.setLocalLevel('info')
/**
|--------------------------------------------------
| 创建带有命名空间的级别,并在当前文件中使用它,全局级别将被忽略
|--------------------------------------------------
*/
log.setNamespaceLevel('error', 'show-only-errors')
/**
|--------------------------------------------------
| 使用先前创建的命名空间。您可以使用在其他文件中创建的命名空间。
|--------------------------------------------------
*/
log.useNamespace('show-only-errors')
//log.namespace('show-only-errors');
```
# 来源
- [log-beautify](https://www.npmjs.com/package/log-beautify)
# 感谢
- [Maxlopez](https://github.com/Maxlopez)
- [Log Beautify](https://www.npmjs.com/package/log-beautify)
- [Color Regex](https://www.npmjs.com/package/color-regex)
- [Chalk](https://www.npmjs.com/package/chalk)
# License
MIT