我刚刚开始调查使用 Monaco 作为我们内部代码游乐场的编辑器。但我无法弄清楚如何创建一个处理程序,以便每当编辑窗口中的文本通过键入、粘贴或删除更改时都会被触发。为了提供背景,我只需使用 CodeMirror 编辑器:
editor.on('change', function(editor, change) {
render();
});
这是我的JavaScript代码,用于创建基本的编辑器:
require.config({ paths: { 'vs': '../node_modules/monaco-editor/min/vs' }});
require(['vs/editor/editor.main'], function()
{
window.editor = monaco.editor.create(document.getElementById('editor'),
{
value: [
'var canvas = document.getElementById("playground");',
'var ctx = canvas.getContext("2d");',
'ctx.fillStyle = "#FF00FF";',
'ctx.fillRect(0,0,150,75);',
].join('\n'),
language: 'javascript'
});
});
谢谢!
editor.getModel().onDidChangeContent
,现在它可以正常工作。 - dv1729editor.getModels()[0].onDidChangeContent
确实有效。 - Shan Eapen Koshy