# no-extra-label
禁止不必要的标签
一些该规则报告的问题可以通过 --fix 命令行选项 自动修复
如果循环不包含嵌套循环或开关,则不需要标记循环。
A: while (a) {
break A;
}
您可以通过移除标签并使用不带标签的 break
或 continue
来获得相同的结果。这些标签可能会让开发人员感到困惑,因为他们希望标签能跳得更远。
# 规则详情
该规则旨在消除不必要的标签。
此规则的错误代码示例:
/*eslint no-extra-label: "error"*/
A: while (a) {
break A;
}
B: for (let i = 0; i < 10; ++i) {
break B;
}
C: switch (a) {
case 0:
break C;
}
此规则的正确代码示例:
/*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;
}
# 何时不使用
如果您不想收到有关标签使用情况的通知,那么禁用此规则是安全的。