0

有没有办法可以使我包含的模块引起的警告消息静音?

我喜欢这个模块,但是每次我调用它们的函数时,控制台都会输出:

"Utf8String" type is deprecated, use "CString" instead

我正在制作一个控制台应用程序,因此更愿意隐藏此消息。

4

2 回答 2

0

您收到的警告消息实际上来自节点而不是模块。但是,该模块会导致警告,因为它调用了以前版本的节点中使用的 api。

我认为无论如何都不会告诉节点隐藏记录到控制台的警告消息。

如果您真的决定摆脱这些警告,您可以进入模块的源代码并进行查找和替换。

"Utf8String" to "CString"

我对另一个模块做了完全相同的事情,我也无法忍受这些消息。

于 2012-09-14T00:20:32.717 回答
0

在这种情况下,我需要的模块需要一个模块,该模块具有自定义代码,该代码既使用Utf8String又触发了错误。

// alias Utf8String
var utfstringwarned = false
Object.defineProperty(types, 'Utf8String', {
    enumerable: false
  , configurable: true
  , get: function () {
      if (!utfstringwarned) {
        utfstringwarned = true
        console.error('"Utf8String" type is deprecated, use "CString" instead')
      }
      return types.CString
    }
})

并在历史上写到

0.0.20 / 2012-06-27
===================

 - rename the `Utf8String` type to `CString` (#5)
 - make `Utf8String` an alias to `CString` and deprecated
 - more work on docs (not yet ready)

因此,作为临时解决方案,我可能会注释掉错误消息,或者作为更永久的解决方案,选择不同的模块。

于 2012-09-14T09:39:41.277 回答