当我想检查数组长度时,为什么 eslint 会抛出错误?
Why eslint throw error when I want check array length?
为什么 eslint 抛出错误 ( no-unused-expression )。我只是想检查数组是否为空,然后执行调度。
useEffect(() => {
let totalPrice = 0;
// eslint-disable-next-line no-unused-expressions
cart.length
? cart.forEach((item: AsideItemInterface) => {
totalPrice += item.quantity * item.price;
dispatch(setTotal(totalPrice));
})
: dispatch(setTotal(0));
}, [cart]);
如果,我删除了 eslint-disable-next-line,出现错误。
问题是您正在编写一个具有值结果的表达式,但您没有使用该结果。更具体地说,您正在使用 ? :
运算符,就像 if
语句一样。解决方案是编写您实际使用的 if
语句(即 if (cart.length) { ... } else { ... }
)。
为什么 eslint 抛出错误 ( no-unused-expression )。我只是想检查数组是否为空,然后执行调度。
useEffect(() => {
let totalPrice = 0;
// eslint-disable-next-line no-unused-expressions
cart.length
? cart.forEach((item: AsideItemInterface) => {
totalPrice += item.quantity * item.price;
dispatch(setTotal(totalPrice));
})
: dispatch(setTotal(0));
}, [cart]);
如果,我删除了 eslint-disable-next-line,出现错误。
问题是您正在编写一个具有值结果的表达式,但您没有使用该结果。更具体地说,您正在使用 ? :
运算符,就像 if
语句一样。解决方案是编写您实际使用的 if
语句(即 if (cart.length) { ... } else { ... }
)。