no-empty
禁用空代码块语句
空代码块语句虽然在技术上不是错误,但通常是由于未完成的重构而发生的。它们可能会在阅读代码时引起混淆。
规则详情
此规则禁用空代码块语句。此规则忽略包含注释的代码块语句(例如,在 try
语句的空 catch
或 finally
块中,以指示执行应继续,无论是否发生错误)。
此规则的错误代码示例
在代码演练场中打开
/*eslint no-empty: "error"*/
if (foo)
while (foo)
try {
doSomething();
} catch(ex) finally
此规则的正确代码示例
在代码演练场中打开
/*eslint no-empty: "error"*/
if (foo) {
// empty
}
while (foo) {
/* empty */
}
try {
doSomething();
} catch (ex) {
// continue regardless of error
}
try {
doSomething();
} finally {
/* continue regardless of error */
}
选项
此规则有一个用于例外的对象选项
"allowEmptyCatch": true
允许空的catch
子句(即,不包含注释的子句)
allowEmptyCatch
使用 { "allowEmptyCatch": true }
选项时此规则的附加正确代码示例
在代码演练场中打开
/* eslint no-empty: ["error", { "allowEmptyCatch": true }] */
try {
doSomething();
} catch (ex) {}
try {
doSomething();
}
catch (ex) {}
finally {
/* continue regardless of error */
}
何时不使用
如果您有意使用空代码块语句,则可以禁用此规则。
相关规则
版本
此规则在 ESLint v0.0.2 中引入。