no-extra-label
禁止不必要的标签
🔧 可修复
此规则报告的一些问题可以通过 --fix
命令行 选项自动修复。
如果循环不包含嵌套循环或 switch 语句,则标记循环是不必要的。
A: while (a) {
break A;
}
您可以通过删除标签并使用不带标签的 break
或 continue
来达到相同的结果。可能这些标签会让开发者感到困惑,因为他们期望标签跳转到更远的地方。
规则详情
此规则旨在消除不必要的标签。
此规则的错误代码示例
在在线运行中打开
/*eslint no-extra-label: "error"*/
A: while (a) {
break ;
}
B: for (let i = 0; i < 10; ++i) {
break ;
}
C: switch (a) {
case 0:
break ;
}
此规则的正确代码示例
在在线运行中打开
/*eslint no-extra-label: "error"*/
while (a) {
break;
}
for (let i = 0; i < 10; ++i) {
break;
}
switch (a) {
case 0:
break;
}
A: {
break A;
}
B: while (a) {
while (b) {
break B;
}
}
C: switch (a) {
case 0:
while (b) {
break C;
}
break;
}
何时不使用它
如果您不想收到有关标签用法的通知,则可以安全地禁用此规则。
相关规则
版本
此规则是在 ESLint v2.0.0-rc.0 中引入的。