簡體   English   中英

React Hooks 更新字典 State

[英]React Hooks Update Dictionary State

我有一個 state 應該是這樣的字典:

[personInfo, setPersonInfo] = useState({"firstName": "", "lastName": ""});

我想像這樣更新這個 state:

setPersonInfo(prevPersonInfo => prevPersonInfo["firstName"] = "name")

但這不起作用。

請不要建議我為 firstName 和 lastName 存儲兩個單獨的狀態。 對於我的特定用例,我有必要使用字典。

我的猜測是它不起作用,因為您正在更改相同的 object,而不是返回一個新的。 我建議以一種擴展到新的 object 的方式重寫它

setPersonInfo(prevPersonInfo => ({...prevPersonInfo, firstName: "name"}))

順便說一句,根據您的 object 的復雜程度,您可能需要考慮useReducer

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM