我正在使用eslint与Sublime Text 3和我正在编写gulpfile.js。

/*eslint-env node*/
var gulp = require('gulp');

gulp.task('default', function(){
    console.log('default task');
});

但是eslint一直显示error: " error: Unexpected console statement. "(no-console)”

我在这里找到了官方文件,但我仍然不知道如何禁用它。

/*eslint-env node*/
var gulp = require('gulp');

/*eslint no-console: 2*/
gulp.task('default', function(){
    console.log('default task');
});

也不管用。

我的崇高文本3插件:升华和升华-contrib-eslint。

这是我的.eslintrc.js文件:

module.exports = {
    "rules": {
        "no-console":0,
        "indent": [
            2,
            "tab"
        ],
        "quotes": [
            2,
            "single"
        ],
        "linebreak-style": [
            2,
            "unix"
        ],
        "semi": [
            2,
            "always"
        ]
    },
    "env": {
        "browser": true,
        "node": true
    },
    "extends": "eslint:recommended"
};

当前回答

如果你在你的本地项目下安装eslint,你应该有一个目录/node_modules/eslint/conf/,在这个目录下有一个文件eslint.json。你可以编辑文件,并修改“no-console”条目的值为“off”(尽管也支持0值):

"rules": {
    "no-alert": "off",
    "no-array-constructor": "off",
    "no-bitwise": "off",
    "no-caller": "off",
    "no-case-declarations": "error",
    "no-catch-shadow": "off",
    "no-class-assign": "error",
    "no-cond-assign": "error",
    "no-confusing-arrow": "off",
    "no-console": "off",
    ....

我希望这个“配置”可以帮助你。

其他回答

你应该更新eslint配置文件来永久修复这个问题。否则,你可以临时启用或禁用eslint检查控制台如下所示

/* eslint-disable no-console */
console.log(someThing);
/* eslint-enable no-console */

如果在配置了软件包后仍然有问题。Json,如果你选择使用package. Json。Json来跟踪而不是单独的配置文件):

"rules": {
      "no-console": "off"
    },

它仍然不能为你工作,不要忘记你需要回到命令行,再次执行npm install。:)

2018年10月,

只做:

// tslint:disable-next-line:no-console

其他人用

// eslint-disable-next-line no-console

不管用!

或者你可以允许“无控制台”,而不是关闭“无控制台”。在.eslintrc.js文件中放入

  rules: {
    "no-console": [
     "warn",
     { "allow": ["clear", "info", "error", "dir", "trace", "log"] }
    ]
  }

这将允许您执行console.log和console.log。清除etc而不抛出错误。

如果您只想禁用该规则一次,则需要查看Exception的答案。

你可以通过只对一行禁用规则来改善这一点:

... 在当前行中:

console.log(someThing); /* eslint-disable-line no-console */

... 或者在下一行:

/* eslint-disable-next-line no-console */
console.log(someThing);