Skip to content
← Back to rules

eslint/no-warning-comments 严谨

An auto-fix is available for this rule.

它的作用

禁止在代码中使用如 TODO、FIXME、XXX 等警告类注释。

为什么这是不好的?

开发人员经常添加诸如 TODO 或 FIXME 之类的注释,以标记未完成的工作或需要关注的区域。虽然这些注释在开发阶段很有用,但它们可能表明代码尚未完成,不应发布到生产环境。此规则有助于在代码进入生产环境前发现此类注释。

示例

此规则的 错误 代码示例:

javascript
// TODO: 实现此功能
function doSomething() {}

// FIXME: 这里有问题
const x = 1;

/* XXX: 临时解决方案 */
let y = 2;

此规则的 正确 代码示例:

javascript
// 这是一个普通注释
function doSomething() {}

// 注意:这解释了某件事
const x = 1;

选项

此规则有一个选项对象,其默认值如下:

json
{
  "terms": ["todo", "fixme", "xxx"],
  "location": "start",
  "decoration": []
}

terms

要匹配的术语数组。匹配不区分大小写。

location

检查术语的位置:

  • "start"(默认):术语必须出现在注释开头(在任何装饰符之后)
  • "anywhere":术语可以在注释中的任意位置出现

decoration

location"start" 时,忽略注释开头的字符数组。对于像 JSDoc 风格注释中的 * 这类常见注释装饰符非常有用。

如何使用

通过配置文件或命令行启用此规则的方法如下:

json
{
  "rules": {
    "no-warning-comments": "error"
  }
}
bash
oxlint --deny no-warning-comments

参考资料