您现在的位置是:网站首页> 编程资料编程资料
vue实现前端展示后端实时日志带颜色示例详解_vue.js_
2023-05-24
400人已围观
简介 vue实现前端展示后端实时日志带颜色示例详解_vue.js_
vue实现前端展示后端带颜色的日志
需求
通过loki获取项目产生的日志,并且在前端显示出来,一开始在没有经过处理的数据会显示一些乱码,并没有将字符转换
经过一番查询后,发现可以使用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]) } 渲染
显示

采用innerHTML例子
需求:
项目是一个管理系统,当执行安装任务时,需要把后端安装过程中的日志推送到前端,前端在页面上展示实时进度,并且与终端显示的颜色保持一致。
用websocket或者前端设置定时器的方式,定时去获取后端的json数据比较简单,比较纠结的是怎么显示颜色,方便用户直观看到安装过程中的进度,报错等信息。
后端拿到的json数据:
可以看到ansi 的颜色代码就好像乱码一样,如果直接展示到页面上,是不会转换ansi 的颜色代码,看到的就类似一个普通的txt文本,用户没法直观看到想要的信息。
解决
对ansi 的颜色代码进行转化,输出在页面上,需要用到的插件:ansi_up
项目地址:https://github.com/drudru/ansi_up
2.1 安装
$ npm install ansi_up
2.2 引入
import {default as AnsiUp} from 'ansi_up'; 2.3 使用
var ansi_up = new AnsiUp; var html = ansi_up.ansi_to_html(txt); //调用ansi_to_html()方法,txt就是从后端拿到的json数据 var statusLog= document.getElementById("statusLog"); //statusLog 即是页面需要展示内容的div statusLog.innerHTML = html; 效果

以上就是vue实现前端展示后端实时日志带颜色示例详解的详细内容,更多关于vue前端展示后端日志带颜色的资料请关注其它相关文章!
您可能感兴趣的文章:
相关内容
- 利用Vue模拟实现element-ui的分页器效果_vue.js_
- Javascript如何实现对象扁平化实例详解_javascript技巧_
- React-Hook中使用useEffect清除定时器的实现方法_React_
- Nodejs 模块化实现示例深入探究_node.js_
- React Hook中的useEffecfa函数的使用小结_React_
- JavaScript canvas 实现用代码画画_javascript技巧_
- React中的路由嵌套和手动实现路由跳转的方式详解_React_
- Vue项目新一代状态管理工具Pinia的使用教程_vue.js_
- 如何在React中直接使用Redux_React_
- Vue悬浮窗和聚焦登录组件功能实现_vue.js_
