[英]Ace editor. Set current edits state as base
I'm using ace editor wrapped by react-ace for my project. 我在我的项目中使用了由react-ace包装的ace编辑器 。
How can I destroy all undo/redo history in certain moment when I need it? 在需要时如何在特定时刻销毁所有撤消/重做历史记录?
I've tried this.aceRef.editor.destroy();
我已经尝试过
this.aceRef.editor.destroy();
(just react ref bound with editor), but unfortunately it doesn't play well in some circumstances. (只是对与编辑器绑定的ref做出反应),但不幸的是,在某些情况下它不能很好地发挥作用。 So, I just need to clean undo/redo session/history or something like that.
因此,我只需要清除撤消/重做会话/历史记录或类似内容即可。
Any solution? 有什么办法吗?
Ace editor actually has this reset
method with UndoManager
. Ace编辑器实际上具有
UndoManager
此reset
方法。
Then you need to assign temporary stored undomanager as base. 然后,您需要分配临时存储的undomanager作为基础。
It could be done smth like that: 可以这样做:
const { editor } = this.aceRef;
const session = editor.getSession();
const undoManager = session.getUndoManager();
undoManager.reset();
session.setUndoManager(undoManager);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.