Skip to content

UndoManager

修改笔记/笔记本数据时,应使用 undoGrouping(actionName, topicid, block) 包裹修改逻辑,以便支持撤销并在块执行后刷新界面。通过 UndoManager.sharedInstance() 获取(类型为 JSBUndoManager)。

方法返回值说明
static sharedInstance()JSBUndoManager获取全局 UndoManager。
方法参数说明
undoGrouping(actionName, inNotebook topicid, block)actionName: string;topicid: string;block: JSValue(无参函数)在指定笔记本下执行 block,作为一次可撤销操作;执行后界面会刷新。
undo()执行撤销。
redo()执行重做。
canUndo / canRedo是否可撤销/重做。
clearAll()清空撤销栈。

修改笔记标题时,先取笔记本 ID(如 note.notebookId),再在 block 内修改 note.noteTitle,块外可调用 Application.sharedInstance().refreshAfterDBChanged(topicid)(若需)。