我应该将 key/value 对合并为一个 useState 挂钩吗?
Should I consolidate key/value pairs into a single useState hook?
在大多数情况下,哪一个是最佳做法?
例如:
const [currentDaypart, setCurrentDaypart] = useState({})
const [nextDaypart, setNextDaypart] = useState({})
或
const [daypart, setDaypart] = useState({
current: {},
next: {}
})
????
第一个更好。通常,您应该注意 React 状态中的深层嵌套对象。为避免意外行为,状态应不可变地更新。
一旦你深度克隆状态,React 将重新计算并重新渲染依赖于变量的所有内容,即使它们没有改变!你先把状态弄平。一旦这样做,您就会发现有助于处理大状态的漂亮工具,例如 useReducer()。
在大多数情况下,哪一个是最佳做法?
例如:
const [currentDaypart, setCurrentDaypart] = useState({})
const [nextDaypart, setNextDaypart] = useState({})
或
const [daypart, setDaypart] = useState({
current: {},
next: {}
})
????
第一个更好。通常,您应该注意 React 状态中的深层嵌套对象。为避免意外行为,状态应不可变地更新。
一旦你深度克隆状态,React 将重新计算并重新渲染依赖于变量的所有内容,即使它们没有改变!你先把状态弄平。一旦这样做,您就会发现有助于处理大状态的漂亮工具,例如 useReducer()。