在我的代码中,我有一系列三元运算符,它们使用加法/减法赋值运算符来修改与SVG中元素的像素位置相对应的变量的值。
以下是一些表达式示例:
target === 'L' ? (endX -= edgeShift) : (endX += edgeShift);
source === 'L' ? (startX += halfSize) : (startX -= halfSize);
target === 'T' ? (endY -= edgeShift) : (endY += (edgeShift + 12));
我的短毛犯了错误
@typescript-eslint/no-unused-expressions
。从我对
documentation for the rule
看起来三元运算符的每一边都会修改程序的状态,所以我认为它不会失败。
我看不到什么
"allowTernary"
也设置了,并且示例使其不清楚当其为false时的预期行为。
既然我认为这是我的问题,1)是什么原因导致的?2) 有没有一种方法可以在不修改配置的情况下在一行中完成这项工作?我宁愿不使用带有if/else的两行,因为这会损害可读性。