当前位置:   PHOTOSHOP > 正文

如何在Monaco编辑器中插入文本?

monaco-editor,编辑器,javascript,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix时间戳,在线开发工具,前端开发工具,开发人员工具,站长工具

我的应用程序中嵌入了摩纳哥代码编辑器.

如何以编程方式在特定行上插入文本?

var editor = monaco.editor.create(document.getElementById("container"), {
    value: "// First line\nfunction hello() {\n\talert('Hello world!');\n}\n// Last line",
    language: "javascript",

    lineNumbers: false,
    roundedSelection: false,
    scrollBeyondLastLine: false,
    readOnly: false,
    theme: "vs-dark",
});
// how do I do this?
editor.insertText("FOO");

Doug.. 12

使用executeEdits API

var line = editor.getPosition();
var range = new monaco.Range(line.lineNumber, 1, line.lineNumber, 1);
var id = { major: 1, minor: 1 };             
var text = "FOO";
var op = {identifier: id, range: range, text: text, forceMoveMarkers: true};
editor.executeEdits("my-source", [op]);


kosinix.. 9

一个更可靠的解决方案是使用Selection API代替Position

var selection = editor.getSelection();
var range = new monaco.Range(selection.startLineNumber, selection.startColumn, selection.endLineNumber, selection.endColumn);
var id = { major: 1, minor: 1 };             
var text = "XXX";
var op = {identifier: id, range: range, text: text, forceMoveMarkers: true};
editor.executeEdits("my-source", [op]);

如果编辑器中已经有预先选择的文本,则插入将替换它,我认为这是正确的行为。



1> Doug..:

使用executeEdits API

var line = editor.getPosition();
var range = new monaco.Range(line.lineNumber, 1, line.lineNumber, 1);
var id = { major: 1, minor: 1 };             
var text = "FOO";
var op = {identifier: id, range: range, text: text, forceMoveMarkers: true};
editor.executeEdits("my-source", [op]);



2> kosinix..:

一个更可靠的解决方案是使用Selection API代替Position

var selection = editor.getSelection();
var range = new monaco.Range(selection.startLineNumber, selection.startColumn, selection.endLineNumber, selection.endColumn);
var id = { major: 1, minor: 1 };             
var text = "XXX";
var op = {identifier: id, range: range, text: text, forceMoveMarkers: true};
editor.executeEdits("my-source", [op]);

如果编辑器中已经有预先选择的文本,则插入将替换它,我认为这是正确的行为。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/blog/PHOTOSHOP/detail/14888
推荐阅读
相关标签
  

闽ICP备14008679号