Three.js: 禁用调试消息?

创建于 2015-09-06  ·  6评论  ·  资料来源: mrdoob/three.js

我目前正在开展一个项目,该项目将许多平面几何图形组合成一个网格。

当我尝试调试我的代码时,我无法在加载时打开控制台,因为调试消息“THREE.PlaneGeometry:考虑使用 THREE.PlaneBufferGeometry 以降低内存占用”。 向控制台发送垃圾邮件,并通过在控制台中显示它们来减慢代码的加载速度。

它挂在其他一些问题上,但在页面因其他问题而冻结后,我无法打开控制台查看错误。 此外,我无法在加载时让控制台保持打开状态,因为它通过打印警告消息大大减慢了我的加载时间:P

有没有办法可以禁用这些消息? 我尝试将 PlaneGeometry 切换到 PlaneBufferGeometry 但这在我的代码中引发了我现在不想处理的其他错误。 此外,我目前并不担心内存问题,目前我只需要在几天内将我的项目的工作(稳定或不稳定)版本呈现给我的老板。

Suggestion

最有用的评论

我不打算继续这个讨论,因为我认为已经达成共识,但我只想说:

对于查看您的应用程序的任何其他人来说,只需查看使用three.js 构建的控制台和版本即可了解这一点非常有用。

我使用 Vue、Moment、jQuery、Bootstrap,但他们都认为没有必要将强制性消息记录到控制台。

所有6条评论

我不确定是否可以禁用日志,但它可能应该是,因为您不希望在生产版本中使用它。 (也许缩小器会处理它 - 不知道)

作为一种解决方法,您可以在加载网格时覆盖console.log函数,然后重置它,例如:

var oldLogFunction = console.log;

console.log = function(){}; // noop

// ... load meshes

console.log = oldLogFunction; // reset console.log

// ... perform debugging

这很好用,请注意,在这种情况下它是 console.info :)

我同意你所说的关于生产的事情。 我告诉我这个项目的合作伙伴发生了什么,他很惊讶没有禁用日志消息的选项

+1对此。 我正在开发一个在标准输出上输出 PNG 的命令行工具,覆盖console.log不是问题,但它有点问题。

我有问题的具体消息是这个。 在这种特定情况下,似乎在构造函数中添加一个像quiet这样的选项就足够了。 但我想最好有一些更包罗万象的东西......

@crabmusket我个人认为应该始终显示该消息。 对于查看您的应用程序的任何其他人来说,只需查看使用three.js 构建的控制台和版本即可了解这一点非常有用。 考虑一下使用这个免费图书馆必须忍受的一点点广告😉

关于最初的问题,我认为无论如何都不会再显示任何 console.info 消息,所以也许可以关闭这个问题? @mrdoob @Mugen87

我不打算继续这个讨论,因为我认为已经达成共识,但我只想说:

对于查看您的应用程序的任何其他人来说,只需查看使用three.js 构建的控制台和版本即可了解这一点非常有用。

我使用 Vue、Moment、jQuery、Bootstrap,但他们都认为没有必要将强制性消息记录到控制台。

此页面是否有帮助?
0 / 5 - 0 等级