【发布时间】:2021-08-24 21:08:23
【问题描述】:
我正在尝试更改选择菜单中的值。我的代码正在运行,但我认为如果我使用 useReducer 会更好。我正确吗?我试图改变它,但我似乎无法让它工作......在文档中它说:
"当你有复杂的情况时,useReducer 通常比 useState 更可取 涉及多个子值或下一个状态时的状态逻辑 取决于前一个。”
我认为我应该使用它对吗?
const [diametro, setDiametro] = useState(0);
const [total, setTotal] = useState("0");
useEffect(
() => setTotal(() => ((preco / 100) * diametro).toFixed(2).replace(".", ",")), [diametro]
);
【问题讨论】:
-
我认为即使是
useEffect也可能已经过分了。为什么不在您当前正在更新diametro和preco的任何地方直接调用setTotal?请记住,代码应该易于阅读和维护,useEffect的异步性可能已经令人困惑——更不用说useReducer了!
标签: reactjs typescript use-reducer