JavaScript   发布时间:2022-04-16  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了javascript – 在ACE编辑器中重置撤消堆栈大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在 ACE editor中重置撤消堆栈.行为应该是:

>我在编辑器上做了一些修改.
>调用一些魔术功能重置撤消堆栈
>当尝试撤消时,这将不可能,因为撤消栈被重置.

我想这与ACE的UndoManager有关,但我不知道如何在下面的例子中使用它.

var editor = ace.edit("editor");
editor.setTheme("ace/theme/monoKai");
editor.getSession().setMode("ace/mode/markdown");

setTimeout(function() { 
  editor.SETVALue("And now how can I reset the\nundo stack,so pressing\nCTRL+Z (or Command + z) will *NOT*\ngo BACk to previous value?",-1);
},3000);
#editor {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  font-size: 25px;
}
<script src="https://cdnjs.cloudFlare.com/ajax/libs/ace/1.1.9/ace.js"></script>
<div id="editor">This value will be changed in 3 seconds.</div>

我已经看过编辑器和editor.session的原型找到一些帮助功能,但没有成功.

解决方法

是的,UndoManager是保持所有历史的课程.
解决方案是使用空白/新创建的类初始化会话.

查看该片段.

var editor = ace.edit("editor");
editor.setTheme("ace/theme/monoKai");
editor.getSession().setMode("ace/mode/markdown");

setTimeout(function() {
  editor.SETVALue("And now how can I reset the\nundo stack,-1);
  editor.getSession().setUndoManager(new ace.UndoManager())
},3000);
#editor {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  font-size: 25px;
}
<script src="https://cdnjs.cloudFlare.com/ajax/libs/ace/1.1.9/ace.js"></script>
<div id="editor">This value will be changed in 3 seconds.</div>

大佬总结

以上是大佬教程为你收集整理的javascript – 在ACE编辑器中重置撤消堆栈全部内容,希望文章能够帮你解决javascript – 在ACE编辑器中重置撤消堆栈所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。