xterm 是一个使用 TypeScript 编写的前端终端组件,可以直接在浏览器中实现一个命令行终端应用。4.0 已经发布,主要如下:
- 添加新的插件系统,包括 WebGL 渲染器插件的实验版本
- 改进构建过程和缩小 npm 的可分配性
- 使解析器更加兼容和可扩展
- 启用 TypeScript 模式
- 删除不使用的 API
- 其他错误修复
新的插件系统
这个新系统允许将利用 xterm.js API 的其他功能封装到一个模块中,该模块可以在 xterm.js 的用户之间共享。API 与以前的版本相比有了改进,支持 TypeScript 和每个终端的生命周期管理。
export class Terminal implements IDisposable {
loadAddon(addon: ITerminalAddon): void;
}
export interface ITerminalAddon extends IDisposable {
activate(terminal: Terminal): void;
}
 创建一个插件就如为一个对象提供 Activate 和 Dispose 方法一样:
class ExampleAddon {
private _terminal: Terminal | undefined;
activate(terminal: Terminal): void {
this._terminal = terminal;
console.log('activated');
}
dispose(): void {
console.log('disposed');
}
}
 使用如下:
const terminal = new Terminal();
terminal.loadAddon(new ExampleAddon());
terminal.dispose();
 该版本还有 API 的更新和错误修复,详情见发布说明:
https://github.com/xtermjs/xterm.js/releases/tag/4.0.0 |