vue + xterm 前端终端terminal

引入

javascript 复制代码
import {Terminal} from "xterm";
import {FitAddon} from "xterm-addon-fit";
import "xterm/css/xterm.css";

html

javascript 复制代码
<div id="terminal"></div>

vue

javascript 复制代码
onMounted(() => {
  nextTick(() => {
    initTerm();
  })
})

const initTerm = async () => {
  let termContainer = document.getElementById("terminal");
  term = new Terminal({
    lineHeight: 1.3,
    fontSize: 15,
    fontFamily:
      "WenQuanYi Micro Hei, Monaco, Menlo, Consolas, 'Courier New', monospace",
    theme: {
      background: '#181d28',
    },
    unicodeVersion: 12,
    convertEol: true,
    // 光标闪烁
    cursorBlink: true,
    cursorStyle: 'underline',
    scrollback: 100,
    tabStopWidth: 4,
  });

  term.open(termContainer)
};

write

命令 含义
term.write('\n') 换行
term.write('\r'+内容) 从头替换当前行内容
write('\x1b[2K\r') 删除当前整行

调整光标位置

javascript 复制代码
term._core.buffer.x = 0;
相关推荐
人无远虑必有近忧!3 分钟前
fetch请求图片报跨域
前端·javascript
谢院柯4 分钟前
解决修改 node_modules 依赖库源码后重复安装问题的几种方案
前端
疯狂打码的少年7 分钟前
【程序语言与编译】NFA转DFA(子集构造法)
前端·笔记
2401_868534787 分钟前
5G和4G接入网对比介绍
vue.js
半只小闲鱼8 分钟前
合并多个excel文件到一个文件中
前端·python·数据分析
fobwebs18 分钟前
Chrome谷歌浏览器多开教程,如何在电脑上同时登录多个GMAIL账号
前端·chrome·多开·同时登录多个gmail
前端 贾公子27 分钟前
小程序蓝牙打印探索与实践 (最终章)
前端·微信小程序·小程序
chushiyunen27 分钟前
vue export default
前端·javascript·vue.js
右耳朵猫AI31 分钟前
前端周刊2026W23 | React 19.2.7、Conductor重写提速、Lovable切换TanStack Start
前端·react.js·前端框架
zzqssliu35 分钟前
Next.js图片自适应压缩:跨境站点图片加载提速代码方案
linux·javascript·ubuntu