ACE编辑器中的applyDeltas

时间:2013-08-05 03:20:26

标签: ace-editor

我正在尝试在Ace编辑器中保存更改操作,然后播放它们。下面有一些伪代码 - 要点是applyDeltas API似乎没有为我的编辑器做任何事情。我绑定到编辑器更改事件,将更改增量推送到数组,并尝试稍后再播放 - 我在运行下面的代码时没有看到任何错误,但我也没有看到我的编辑器内容发生变化。

感谢
穆斯塔法

shouldRecord = true;
myStoredArray = new Array();
editor.on('change', function(e) {
    if(shouldRecord) {
      myStoredArray.push(e.data);
    }
});


//on a button click 
shouldRecord = false;
editor.getSession().setValue('');  //clear
for(var currentDelta in myStoredArray) {
    editor.getSession().getDocument().applyDeltas(currentDelta);
}

1 个答案:

答案 0 :(得分:4)

当然我发现了答案 -

applyDeltas(Object deltas) API采用一系列增量。将上面的示例代码更改为editor.getSession().getDocument().applyDeltas([currentDelta])可以正常播放。

希望这有助于某人。

的Mustafa