有什么方法可以禁用控制台中出现的所有错误和警告?

时间:2019-04-16 05:30:35

标签: reactjs

我不想在某些开发环境的控制台中显示警告。有什么办法可以实现?我的应用程序是使用create react应用程序引导的。

2 个答案:

答案 0 :(得分:0)

由于您正在使用React,所以我猜您已经在使用babel。有一个用于此目的的插件。它称为babel-plugin-transform-remove-console。这将在构建过程中排除所有console.log的语句。
将其安装在您的应用中,然后通过.babelrc对其进行配置,如下所示:

{
  "plugins": ["transform-remove-console"]
}

您还可以指定控制台功能的变体以排除:

{
  "plugins": [ ["transform-remove-console", { "exclude": [ "error", "warn"] }] ]
}

我的建议是除非必要,否则不要在代码中使用控制台日志。

答案 1 :(得分:0)

在我的App.js中,我具有以下代码来实现此目的:

import { YellowBox } from 'react-native';

componentDidMount() {
    // The following lines are a workaround
    // in order to stop getting warnings about timer
    // See: https://github.com/firebase/firebase-js-sdk/issues/97#issuecomment-365456531
    YellowBox.ignoreWarnings(['Setting a timer']);
    const _console = _.clone(console);
    console.warn = message => {
      if (message.indexOf('Setting a timer') <= -1) {
        _console.warn(message);
      }
    };
}