Appearance
禁止在代码中使用如 TODO、FIXME、XXX 等警告类注释。
开发人员经常添加诸如 TODO 或 FIXME 之类的注释,以标记未完成的工作或需要关注的区域。虽然这些注释在开发阶段很有用,但它们可能表明代码尚未完成,不应发布到生产环境。此规则有助于在代码进入生产环境前发现此类注释。
此规则的 错误 代码示例:
// TODO: 实现此功能 function doSomething() {} // FIXME: 这里有问题 const x = 1; /* XXX: 临时解决方案 */ let y = 2;
此规则的 正确 代码示例:
// 这是一个普通注释 function doSomething() {} // 注意:这解释了某件事 const x = 1;
此规则有一个选项对象,其默认值如下:
{ "terms": ["todo", "fixme", "xxx"], "location": "start", "decoration": [] }
terms
要匹配的术语数组。匹配不区分大小写。
location
检查术语的位置:
"start"
"anywhere"
decoration
当 location 为 "start" 时,忽略注释开头的字符数组。对于像 JSDoc 风格注释中的 * 这类常见注释装饰符非常有用。
*
通过配置文件或命令行启用此规则的方法如下:
{ "rules": { "no-warning-comments": "error" } }
oxlint --deny no-warning-comments
eslint/no-warning-comments 严谨
它的作用
禁止在代码中使用如 TODO、FIXME、XXX 等警告类注释。
为什么这是不好的?
开发人员经常添加诸如 TODO 或 FIXME 之类的注释,以标记未完成的工作或需要关注的区域。虽然这些注释在开发阶段很有用,但它们可能表明代码尚未完成,不应发布到生产环境。此规则有助于在代码进入生产环境前发现此类注释。
示例
此规则的 错误 代码示例:
此规则的 正确 代码示例:
选项
此规则有一个选项对象,其默认值如下:
terms要匹配的术语数组。匹配不区分大小写。
location检查术语的位置:
"start"(默认):术语必须出现在注释开头(在任何装饰符之后)"anywhere":术语可以在注释中的任意位置出现decoration当
location为"start"时,忽略注释开头的字符数组。对于像 JSDoc 风格注释中的*这类常见注释装饰符非常有用。如何使用
通过配置文件或命令行启用此规则的方法如下:
参考资料