首页 > 解决方案 > Xtermjs 不渲染大输出

问题描述

我正在使用 pusher 和 xtermjs。对于像这样的命令的小输出,wfree -m可以正常工作。对于命令的大输出,ps -aux它不起作用。输出显示在浏览器控制台中,但不在 xtermjs 输出 div 中。

这是我的推送事件处理程序。

    this.term = new Terminal({
      debug: true,
      allowTransparency: true,
      applicationCursor: true,
      applicationKeypad: true,
      normalFontWeight: 100,
      fontSize: 14,
      cursorBlink: true,
      cursorStyle: 'block', // “block” | “underline” | “bar” *
    })

    this.term.open(document.getElementById(this.outputDiv))
    this.term.fit()

    let screenObject = this
    let terminalObj = this.term
    window.UserChannel.bind('com.testing.command.result', function (data) {
      // console.log(data)
      let text = data.payload.replace(/\n/g, '\r\n')
      terminalObj.writeln(text)
      // terminalObj.fit()
      // screenObject.hideHelpers()
    })

标签: javascriptterminalxtermjs

解决方案


问题出在 xterm-scroll-area 上。它在背后隐藏数据。我已经设置了样式选项postion:absolute; z-index:0;并且它有效。


推荐阅读