我正在尝试在摩纳哥编辑器上设置自定义主题,但是当我更改我想要创建的自定义主题的颜色(基于现有主题)时,更改不适用,我使用setTheme来应用主题,但每次我这样做,我得到一个错误,说setTheme不是一个功能。
我使用playground上反映的代码使其正常工作,任何人都知道是否存在与此相关的问题?以及如何解决?我的版本目前是10.01
答案 0 :(得分:2)
好,所以我遇到了同样的问题,发现正确的答案是@mhuss。
但是在他的整个回答中……真正的问题在于细节。仔细看。它是:
monaco.editor.setTheme('vs');
。重点放在 monaco !
我首先尝试了以下方法,因为这样做对我来说真的很有意义:
var myEditor = monaco.editor.create( ... blah blah ...);
...
myEditor.setTheme('vs-dark');
我尝试更新实例,但是似乎主题是全局设置的。
答案 1 :(得分:1)
我遇到了同样的问题一段时间,但设法让它运转起来。
我使用以下选项初始化了我的摩纳哥编辑器:
->
然后在函数或即时窗口中:
editor = monaco.editor.create(document.getElementById("text-log-container"), {
language: "javascript",
value: editorData,
scrollbar: {
vertical: 'auto',
horizontal: 'auto'
},
theme: "vs-dark",
automaticLayout: true,
readOnly: true
});
答案 2 :(得分:0)
如果目标是动态更新现有主题,那么实际上就像“重新定义”主题一样简单:
monaco.editor.defineTheme('myCoolTheme', {...})
摩纳哥然后将更新主题定义。如果该主题已经是编辑器的活动主题,它将直接将新主题设置应用于编辑器。
另请参见https://microsoft.github.io/monaco-editor/api/modules/monaco.editor.html#definetheme