Skip to main content

Module tiptap

Module tiptap 

Source
Expand description

Tiptap 富文本编辑器桥接:共享类型(UploadsInFlight/UploadErrorEntry)两端都编译; wasm-bindgen extern 与 EditorHandle 在内部的 #[cfg(wasm32)] 子模块里。 Tiptap 编辑器的 wasm-bindgen 绑定层。

封装与 window.TiptapEditor(IIFE 暴露的全局对象)的全部交互, 替代旧版 js_sys::eval 字符串拼贴 + window 全局变量通信。

wasm-bindgen extern 与 EditorHandle、上传 closure 等仅在 WASM 前端编译 (服务端构建无 window);共享的纯数据类型 UploadsInFlight/UploadErrorEntry 在两端都编译,供 write.rs 在视图中渲染上传状态。

用法(Leptos):挂载点用 NodeRef 取元素,create(&element, &opts) 在其上创建实例。 create 以 js_namespace 绑定为成员调用,调用时才解析全局;脚本未加载时返回 Err。 EditorHandle 含 JS 引用(非 Send + Sync),须放进 StoredValue::new_local/RwSignal::new_local,on_cleanup 里 take 出来 丢弃即触发 Drop → destroy。上传状态用 RwSignal<UploadsInFlight> / RwSignal<Vec<UploadErrorEntry>> 传给 wasm 模块的 consume_upload_event。

Structs§

UploadErrorEntry
顶部堆叠的上传失败提示条目。
UploadsInFlight
当前编辑器内进行中的上传计数(来自 onUploadEvent 的 counts 快照)。