我正在为我的项目使用由ace editor包装的react-ace

在需要时如何在特定时刻销毁所有撤消/重做历史记录?

我已经尝试过this.aceRef.editor.destroy();(仅对ref绑定编辑器进行响应),但是不幸的是,在某些情况下它不能很好地发挥作用。
因此,我只需要清除撤消/重做会话/历史记录或类似内容即可。

有什么办法吗?

最佳答案

Ace编辑器实际上具有resetUndoManager方法。

然后,您需要分配临时存储的undomanager作为基础。

可以这样做:

const { editor } = this.aceRef;
const session = editor.getSession();
const undoManager = session.getUndoManager();
undoManager.reset();
session.setUndoManager(undoManager);

关于javascript - Ace编辑。将当前编辑状态设置为基础,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50097522/

10-09 13:51