# san/no-dupe-s-else-if
禁止在
s-if
/s-else-if
链中出现重复条件
- ⚙️ 此规则包含于
"plugin:san/essential"
,"plugin:san/strongly-recommended"
和"plugin:san/recommended"
.
# 📖 规则细节
此规则不允许在同一 s-if
/ s-else-if
链中出现重复条件。
<template>
<!-- ✗ BAD -->
<div s-if="isSomething(x)" />
<div s-else-if="isSomething(x)" />
<div s-if="a" />
<div s-else-if="b" />
<div s-else-if="c && d" />
<div s-else-if="c && d" />
<div s-if="n === 1" />
<div s-else-if="n === 2" />
<div s-else-if="n === 3" />
<div s-else-if="n === 2" />
<div s-else-if="n === 5" />
<!-- ✓ GOOD -->
<div s-if="isSomething(x)" />
<div s-else-if="isSomethingElse(x)" />
<div s-if="a" />
<div s-else-if="b" />
<div s-else-if="c && d" />
<div s-else-if="c && e" />
<div s-if="n === 1" />
<div s-else-if="n === 2" />
<div s-else-if="n === 3" />
<div s-else-if="n === 4" />
<div s-else-if="n === 5" />
</template>
这个规则也可以检测一些条件不相同的情况,例如由于||
和&&
运算符,分支也永远无法执行。
<template>
<!-- ✗ BAD -->
<div s-if="a || b" />
<div s-else-if="a" />
<div s-if="a" />
<div s-else-if="b" />
<div s-else-if="a || b" />
<div s-if="a" />
<div s-else-if="a && b" />
<div s-if="a && b" />
<div s-else-if="a && b && c" />
<div s-if="a || b" />
<div s-else-if="b && c" />
<div s-if="a" />
<div s-else-if="b && c" />
<div s-else-if="d && (c && e && b || a)" />
</template>
# 🔧 配置
暂无。