gpt4 book ai didi

javascript - 王牌编辑器 : Uncaught ReferenceError: window is not defined

转载 作者:行者123 更新时间:2023-11-27 23:15:43 27 4
gpt4 key购买 nike

几天来我一直在寻找以下描述问题的解决方案,但找不到任何帮助...

我在网页上的 6 个不同的 DIV 上使用 Ace 编辑器(因此我有 6 个编辑器)。基本上一切工作正常,我能够创建它们、设置它们(语言模式、软选项卡等)并在用户完成后管理它们的内容。

但是我在控制台中不断出现相同的错误消息“Uncaught ReferenceError:窗口未定义”。我收到了 6 次,页面上每个 Ace 编辑器 1 次。

这是我正在使用的JS。 divIdsArray 是一个包含 6 个 DIV Id 的数组。

function initAceEditorFields()
{
$(document).ready(function(){
for (var i = 0 ; i < divIdsArray.length ; i++){
var l_arr_splitted = divIdsArray[i].split("_");
var l_str_code = l_arr_splitted[2];//Each div id contains either "js" or "html" which i am retrieving here

var l_ace_editor = ace.edit(divIdsArray[i]);

l_ace_editor.setShowPrintMargin(false);
l_ace_editor.getSession().setUseSoftTabs(false);
l_ace_editor.getSession().setTabSize(4);
l_ace_editor.$blockScrolling = Infinity;

if(l_str_code == "js"){
l_ace_editor.getSession().setMode("ace/mode/javascript");
}else{
l_ace_editor.getSession().setMode("ace/mode/html");
}
}
});

}

我正在加载 ace 包中的文件:ace.js、mode-javascript.js 和 mode-html.js。

我尝试过使用 ace 编辑器构建:来自 github 存储库的“src-min”和“src-min-noconflict”,并使用 Chrome、Mozilla 和 MS Edge 进行测试,但总是收到相同的错误消息。

这很奇怪,因为一切似乎都工作正常(或者至少是我想要的)。我只是不想在投入生产时在控制台中留下这些消息。

任何帮助将不胜感激。

谢谢!

最佳答案

您的 ace 编辑器必须在某处使用 Web Worker,然后 Web Worker 内部调用的某个函数正在尝试访问“窗口”。您向我们展示的代码没有引用 window.检查您与 ace 的其他交互,看看您是否传入了引用“window”或 jquery 的函数,或者全局范围内的任何其他依赖项。如果不是,那么我怀疑控制台中的错误超出了您的控制范围。

关于javascript - 王牌编辑器 : Uncaught ReferenceError: window is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35845289/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com