我正在寻找实现一个网络应用程序,该应用程序具有“编码竞赛”风格的界面,在一个屏幕上带有 2 个不同的代码编辑器。一个是只读的,另一个是活动的,允许用户编辑。
我目前正在使用 Ace Editor,我发现它很棒且易于使用。
但是,这是我的问题。尝试在单个页面中实现 2 个不同的编辑器时,我似乎遇到了错误。
未捕获的 RangeError:超出最大调用堆栈大小
js脚本中的变量“editor”是受限词还是使用什么变量名无关紧要?
这是我的 JS 文件中的代码:
var editorFirst = ace.edit("editorFirst");
var editorSecond= ace.edit("editorSecond");
setupEditor();
function setupEditor() {
editorFirst.setTheme("ace/theme/eclipse");
editorFirst.getSession().setMode("ace/mode/javascript");
editorFirst.setShowPrintMargin(false);
editorFirst.setHighlightActiveLine(true);
editorFirst.resize();
editorFirst.setBehavioursEnabled(true);
editorFirst.getSession().setUseWrapMode(true);
document.getElementById('editorFirst').style.fontSize = '14px';
editorSecond.setTheme("ace/theme/eclipse");
editorSecond.getSession().setMode("ace/mode/javascript");
editorSecond.setShowPrintMargin(false);
editorSecond.setHighlightActiveLine(true);
editorSecond.resize();
editorSecond.setBehavioursEnabled(true);
editorReducer.getSession().setUseWrapMode(true);
document.getElementById('editorSecond').style.fontSize = '14px';
}
这是我的html文件代码:
<script src="../assets/js/main.js"></script>
<script src="../assets/js/src/ace.js" type="text/javascript" charset="utf-8"></script>
<div id="editorFirst"></div>
<div id="editorSecond"></div>
提前感谢您的回复!