Expand description
xterm.js 终端桥接:结构镜像 codemirror。 xterm.js 终端桥接:输出专用(无 stdin),配合 SSE 流式渲染容器 stdout/stderr。
镜像 codemirror.rs 范式:
window.XtermTerminal是 IIFE 产物挂在 window 上的对象字面量(含 create 方法);create以 js_namespace 绑定为成员调用,调用时才解析全局,脚本未加载时返回 Err。XtermOptions是普通 JS 对象(TS 侧为 interface):XtermOptions::default()得到空对象,再用 setter 填充。TerminalHandle持有实例 + onReady 闭包,Drop → destroy()。
WASM-only:所有 extern 与 handle 都在 #[cfg(target_arch = "wasm32")] mod wasm 内,
server 构建整体剥离。无跨目标共享数据(纯渲染层)。
用法(Leptos):挂载点用 NodeRef 取元素,先用 use_browser_library(BrowserLibrary::Xterm, ..) 等库就绪,
再在 Effect 内构造 XtermOptions 并 create(&element, &opts);TerminalHandle 含 JS 引用
(非 Send + Sync),放进 StoredValue::new_local/RwSignal::new_local,on_cleanup 里 take
出来丢弃即触发 Drop → destroy。