我已经盯着这个好几天了,从一切来看,我发现它应该可以工作,但总是以“”结束。我正在检查价格变化,可能是正数,也可能是负数,因此 >0 <0。
{parseInt(item.CheeseBarrelChange) > 0 ? <i className={styles.up}></i> :
parseInt(item.CheeseBarrelChange) < 0 ? <i className={styles.down}></i> :''}
最佳答案
三元语句本身似乎没有任何问题,因此,如果条件持续失败,您认为数字高于或低于零;确保 CheeseBarrelChange
的 parseInt
结果不是 NaN
。
function change(input) {
const c = parseInt(input.value);
const i = c > 0 ? 'up' : c < 0 ? 'down' : '';
console.log({ change: c, icon: i});
}
<input value="0" onchange="change(this)"/>
为了检查这一点,您可以考虑将该语句移至函数中并使用常规 if 或 switch 语句。
关于javascript - 三元运算符 if else if 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49581825/