no-lonely-if

禁止 if 语句作为 else 块中的唯一语句

一些该规则报告的问题可以通过 --fix 命令行选项 自动修复

如果 if 语句是 else 块中的唯一语句,则使用 else if 形式通常更清楚。

if (foo) {
    // ...
} else {
    if (bar) {
        // ...
    }
}

应该改写为

if (foo) {
    // ...
} else if (bar) {
    // ...
}

规则详情

此规则不允许 if 语句作为 else 块中的唯一语句。

k7HkpyhTRoT9T3bsrVJ1W9IUT56r3GvYicL0qS8XjwbDvDXG9eGk/CkswpMjh9k+

/*eslint no-lonely-if: "error"*/

if (condition) {
    // ...
} else {
    if (anotherCondition) {
        // ...
    }
}

if (condition) {
    // ...
} else {
    if (anotherCondition) {
        // ...
    } else {
        // ...
    }
}

f/g6SKVZdhoBiPVtnee0m+uPEv1T4kMgIaFUpxdtFwzAZHGBqJ5dJxRHxHHP/cP8

/*eslint no-lonely-if: "error"*/

if (condition) {
    // ...
} else if (anotherCondition) {
    // ...
}

if (condition) {
    // ...
} else if (anotherCondition) {
    // ...
} else {
    // ...
}

if (condition) {
    // ...
} else {
    if (anotherCondition) {
        // ...
    }
    doSomething();
}

何时不使用

knNLfgwxOSaXODwr726V7y/vwwi0NF26TB5w8PdM1gETPBKUsLT3+S3gevpOUy2x4xcaNywV6XhfqJQRtd4uiBDUSEGmCdZMHFixzWYE9ARwOMMiYO/oBzbgvCrbHaxs