我不为什么我的setQuantity不使用setState更新“ quantity”变量。 在函数内部,对象被更新,而不是变量“ quantity”。
"mongodb://mongo-0.mongo,mongo-1.mongo:27017/dbname_?"
控制台显示最后一次更改是6个午餐。我在函数外部有一个用于“数量”的控制台,以查看是否发生更改,但仅在加载屏幕时显示初始值(0、0、0)。
您能帮我解决这个问题吗?
谢谢。
答案 0 :(得分:2)
同样的错误,您正在改变状态,请不要这样做。始终设置新参考以触发具有更新值的渲染
const [quantity, setQuantity] = useState({breakfast: 0, lunch: 0, dinner: 0});
const onChangeQuantity = (value, type) => {
let qty = { ... quantity }; // make a copy
qty[type] = value;
setQuantity(qty);
};