如何在控制台中禁用WebGL错误消息/警告?

时间:2016-09-15 15:54:29

标签: javascript browser webgl

这就是我的调试控制台在chome中的样子:

Lots of webgl warnings

事实上,我使用WebGL框架确实绘制了所有内容,但我没有办法调试它。尽管有些顶点超出范围/屏幕外,我的应用仍能正常运行。我可以暂停警告,以便访问我网站的人不会看到它们(并且我可以调试没有此垃圾邮件的网站)吗?

修改

我知道修复错误总是比关闭消息更好。但是在这种情况下,我已经确认问题可能出在我的显卡上(具体来说,问题是在我停止在我的计算机上运行的比特币矿工后解决的)。在downvoting之前,请考虑谷歌搜索这个主题目前没有很多有用的结果。感谢。

3 个答案:

答案 0 :(得分:0)

除非您想在全局对象中覆盖console.warn并禁止警告,否则我认为没有办法将其关闭

console.warn = function() {}.bind(console.warn);
console.warn('warning'); // nothing gets printed

答案 1 :(得分:0)

无法关闭错误消息。你必须停止做任何产生错误的事情

那个错误意味着某些事情没有得到。由于您显然不在乎它是否被绘制,因此请停止尝试绘制导致错误消息的任何内容。

找出 bisect 的内容。删除一半你正在绘制的东西。如果您不再收到错误,那么问题就是您删除的一半内容之一。如果你仍然得到错误删除另一半。你还能得到它吗?如果删除了错误,你知道问题出在你删除的东西的后半部分。

现在删除一半的一半,依此类推。继续这样做,直到找到导致错误的对象。因为它们无论如何都不被绘制,只需将它们从代码中删除即可。

答案 2 :(得分:-1)

你可以尝试全局覆盖console.log / warn,如果由于任何其他原因不需要控制台,只需将其分配给空函数

console.log = function(){};

如果您还需要其他消息的控制台,可以尝试使用if语句:

let newConsoleLog = console.log;
console.log = function(message){
    if (message !== "message that you dont want logged"){
        newConsoleLog(message)
    }
}