如何在 ng2-ace-editor 中禁用复制、粘贴和删除文本

How to disable Copy, Paste and Droping text in ng2-ace-editor

有什么方法可以在 ng2-ace-editor 中禁用复制、粘贴和删除文本。 https://github.com/fxmontigny/ng2-ace-editor 这是我在 angular 5 应用程序中使用的那个。

您可以在 github https://github.com/ajaxorg/ace/issues/266

上从这个问题中获益

隐藏光标和行突出显示

editor.setOptions({
    readOnly: true,
    highlightActiveLine: false,
    highlightGutterLine: false
})

editor.renderer.$cursorLayer.element.style.opacity=0 使编辑器不可制表

editor.textInput.getElement().tabIndex=-1

editor.textInput.getElement().disabled=true

禁用所有快捷方式

editor.commands.commmandKeyBinding={}

要禁用剪贴板,请添加以下命令:

editor.commands.addCommand({
    name: "breakTheEditor", 
    bindKey: "ctrl-c|ctrl-v|ctrl-x|ctrl-shift-v|shift-del|cmd-c|cmd-v|cmd-x", 
    exec: function() {} 
});

禁用拖动使用

![
    "dragenter", "dragover", "dragend", "dragstart", "dragleave", "drop"
].forEach(function(eventName) {
    editor.container.addEventListener(eventName, function(e) {
        e.stopPropagation()
    }, true)
});
editor.setOption("dragEnabled", false)

找到人民币的答案

editor.container.addEventListener("contextmenu", function(e) {
    e.preventDefault();
    alert('success!');
    return false;
}, false);