Ace:在按键时禁用视图更改,仍然希望有关更改的信息

时间:2015-12-11 12:38:23

标签: javascript editor ace-editor

我是Ace Editor API的新手。 问题:当按下某个键时,我想在视图中禁用“立即”更新。我想根据我的需要转换这些更改说'缓冲'这些更改并稍后使用文档中提到的插入方法更改这些文本。 文档提到了一个setReadOnly方法来禁用文档中的更改,但它也会禁用文本更改通知。 我怎样才能达到理想的行为?

1 个答案:

答案 0 :(得分:0)

更改事件只能用作通知,在文档实际更改后触发。 如果要缓冲用户输入,可以添加一个可以阻止更改事件的keyboardHandler

editor.keyBinding.addKeyboardHandler(function(data, hashId, keyString, keyCode, e) {
   if (hashId == -1) {
       console.log("typed text", keyString)
       return {command: "null"}; // do nothing
   }

})