Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 王牌编辑。将当前编辑状态设置为基本状态_Javascript_Reactjs_Ace Editor_React Ace - Fatal编程技术网

Javascript 王牌编辑。将当前编辑状态设置为基本状态

Javascript 王牌编辑。将当前编辑状态设置为基本状态,javascript,reactjs,ace-editor,react-ace,Javascript,Reactjs,Ace Editor,React Ace,我正在为我的项目使用wrapped by 当我需要撤销/重做历史记录时,如何在特定时刻销毁它 我试过这个.aceRef.editor.destroy()(只需使用编辑器绑定react ref),但不幸的是,它在某些情况下不能很好地发挥作用。 所以,我只需要清理undo/redo session/history之类的东西 有什么解决方案吗?Ace编辑器实际上使用UndoManager具有此reset方法 然后,您需要将临时存储的undomanager指定为基础 可以这样做: const { edi

我正在为我的项目使用wrapped by

当我需要撤销/重做历史记录时,如何在特定时刻销毁它

我试过
这个.aceRef.editor.destroy()(只需使用编辑器绑定react ref),但不幸的是,它在某些情况下不能很好地发挥作用。
所以,我只需要清理undo/redo session/history之类的东西


有什么解决方案吗?

Ace编辑器实际上使用
UndoManager
具有此
reset
方法

然后,您需要将临时存储的undomanager指定为基础

可以这样做:

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

“它在某些情况下不能很好地发挥”是什么意思?它破坏了编辑器,但我需要保留它。我只需要重置编辑历史记录。您可以执行
this.aceRef.editor.value=''
?所有对值的修改都将存储在编辑历史记录中。我需要重置历史记录。您是否尝试过:
editor.getSession().setUndoManager(新ace.UndoManager())