【问题标题】:ERROR: 'console is not defined. [no-undef] - Brackets错误:'未定义控制台。 [no-undef] - 括号
【发布时间】:2018-09-06 14:18:09
【问题描述】:

我已经安装了括号,目前正在使用变量和函数。所有输出在控制台中都可以正常工作,但是我在编辑器中不断收到此错误。

我该如何解决这个问题?

【问题讨论】:

标签: javascript adobe-brackets


【解决方案1】:

no-undef 规则查找未定义的变量,不对环境和全局变量进行任何初始假设(例如console)。

您可以通过在.eslintrc 中添加browser 和/或node 环境来指定您处于console 确实存在的环境中:

  env: {
    browser: true,
    node: true,
  },

更多信息在rule doc

【讨论】:

  • 谢谢!虽然我不想在应用程序中提交任何console.log,但在调试小东西时至少不会出现“控制台未定义”的错误。
【解决方案2】:

我假设它来自no-console 规则,该规则不允许调用console 对象的方法。

在设计用于在浏览器中执行的 JavaScript 中,它是 被认为是避免在console 上使用方法的最佳实践。这样的 消息被认为是用于调试目的,因此不 适合运送给客户。一般来说,使用console 的调用应该 在投入生产之前被剥离。

此规则的正确代码示例:

/*eslint no-console: "error"*/

// custom console Console.log("Hello world!");

作为一种解决方案,您可以将此添加到.eslintrc 中的规则集

rules: {
    'no-console': 'off'
}

【讨论】:

  • 它似乎明确来自no-undef 规则,我认为禁用no-console 不会有帮助。
【解决方案3】:

既然你有它作为 Capitol C,我猜编辑认为你正在寻找一个函数或类。尝试将其从 Console.log() 降低到 console.log("john won...") 看看是否可行。

【讨论】:

    【解决方案4】:

    只是想发表评论:
    /*global console*/

    作为 .js 文件的第一行,然后有:
    // eslint-disable-line no-console

    console.log("");的行

    这将使错误消失!

    【讨论】:

    • 或者您可以添加这两行以在整个 .js 文件中完全禁用它: /*global console*/ /* eslint no-console: "off" */
    【解决方案5】:

    这个也让我发疯了。您可以编辑括号的配置 JSON。它将从左侧排水沟中删除错误图标:

    {
      "brackets-eslint.gutterMarks": false
    }
    

    参考:https://github.com/brackets-userland/brackets-eslint/blob/master/README.md

    【讨论】:

      【解决方案6】:

      在规则对象中添加'no-console'是非活动的

      【讨论】:

      • 请添加更多详细信息以扩展您的答案,例如工作代码或文档引用。
      【解决方案7】:

      删除并重新创建 .eslintrc 文件为我解决了这个问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-01-10
        • 2020-06-05
        • 2017-10-29
        • 2017-09-13
        • 1970-01-01
        • 1970-01-01
        • 2019-07-23
        • 1970-01-01
        相关资源
        最近更新 更多