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

需求: 实现前端展示后端带颜色的日志

通过loki获取项目产生的日志,并且在前端显示出来,一开始在没有经过处理的数据会显示一些乱码,并没有将字符转换

经过一番查询后,发现可以使用ansi_up来对日志进行操作颜色代码进行转化。

实现

使用ansi_up 实现

安装
javascript 复制代码
npm install ansi_up
引入
javascript 复制代码
import { AnsiUp} from 'ansi_up';
js使用
javascript 复制代码
try {
    
        let res: any = await gameServerLog(params)
        console.log(res);
        if (res.code == 0) {
         var ansi_up = new AnsiUp()//声明
         textarea2.value = ansi_up.ansi_to_html(res.data)  //使用
        }
    } catch (error) {
        console.log(error);
    }
html渲染

需要使用v-html

javascript 复制代码
 <div v-html="textarea2" style="white-space:normal"></div>
可能遇到的问题 br标签不换行
如若遇到br标签不换行,请参考如下,没有请忽略
javascript 复制代码
const logData = ref('') //替换br
//监听替换br
watchEffect(() => {
    logData.value = textarea2.value.replace(/&lt;br\/&gt;/g, ' </br>');
})
html渲染也需更改
javascript 复制代码
<div v-html="logData" style="white-space:normal"></div>

实现后效果

相关推荐
计算机魔术师6 小时前
AI 写了一半代码,谁来背锅?Anthropic 的安全重构笔记
前端
明月_清风6 小时前
vLLM 深度实战:2026 年生产级 LLM 推理引擎完全指南
前端·后端·ai编程
风月说与山鬼6 小时前
七、uni-app页面与组件生命周期
前端·uni-app
绿岛之北7 小时前
Electron 安全第三章:URL 加载与 WebView
前端·electron
sunoo-2297 小时前
C 语言文件 IO 全攻略:从基础函数到实战踩坑(BMP 读取 + 词典查询)
linux·c语言·前端·笔记·vscode·学习
Shinner欣儿7 小时前
React18 并发渲染小记
前端
用户921080262867 小时前
AI 对话里的消息时间线分页:上滑加载更多历史记忆的实现与坑点
前端
PedroQue997 小时前
Vue-Router 2.4.0 新增可控重定向功能
前端·uni-app
阿萨德528号7 小时前
npm 包发布实战指南:从零发布、更新迭代到版本治理
前端·npm·策略模式
IT_陈寒7 小时前
Vue的v-for为啥把我的渲染顺序搞乱套了?
前端·人工智能·后端