【日志显示】vue实现前端展示后端带颜色的日志

【日志显示】vue实现前端展示后端带颜色的日志

需求

通过loki获取项目产生的日志,并且在前端显示出来,一开始在没有经过处理的数据会显示一些乱码,并没有将字符转换
【日志显示】vue实现前端展示后端带颜色的日志_第1张图片
经过一番查询后,发现可以使用ansi_up来对日志进行操作颜色代码进行转化。

操作

ansi_up
能够装换颜色代码

GitHub地址:https://github.com/drudru/ansi_up

安装

npm install ansi_up

引入

import {default as AnsiUp} from 'ansi_up';

使用
后端采用loki收集日志

this.logs = res.data.result[0].values
var ansi_up = new AnsiUp()
for (const i in res.data.result[0].values) {
  this.logs[i][1] = ansi_up.ansi_to_html(res.data.result[0].values[i][1])
}

渲染

<div v-for="(log, index) in logs" :key="index">
  <div v-html="log[1]" style="margin-bottom: 5px; font-size: 16px">div>
div>

显示
【日志显示】vue实现前端展示后端带颜色的日志_第2张图片

如果需要采用innerHTML看例子:
博客:https://blog.csdn.net/weixin_50561602/article/details/116496609

你可能感兴趣的:(Vue,前端,vue.js,javascript)