【发布时间】:2022-09-27 21:15:36
【问题描述】:
我分解了我的代码以使其看起来简单
const [factor, setfactor] = useState(1);
const [nullify, setNullify] = useState(1);
const Price = 10;
const Bonus = 15;
const finalPrice = (Price * factor - Bonus) * nullify;
// start 5 = (10 * 2 -15)* 1
// after Click -5 = (10 * 1 -15)* 1
//what i want 0 = (10 * 1 -15)* 0
const handleFactor = () => {
setfactor(1)
validate()
};
const validate = () => {
if (finalPrice <= 0) {
setNullify(0);
}
};
useEffect(() => {
handleFactor();
}, [factor]);
//HTML Stuff
return (
<>
<input type=\"checkbox\" onClick={handleFactor} />
<input type=\"checkbox\" onClick=\"activate bonus\" />
{finalPrice}
</>
);
我想,如果奖金低于 0,最终价格不应该是负数,而是它本身应该变成零 - 但它不起作用。
我知道,当验证完成时,最终价格将是 5。但是我如何获得新的价格?
标签: javascript reactjs react-hooks