[英]How to extract Name from a JSON Name/Value pair and append to a TextField
我有如下所示的 JSON:
{
"Id": 1,
"Title": "Data about John Doe",
"Comments": "Some text goes here",
"UpdatedBy": "John Doe",
"UpdateDate": "Apr 14 2022 12:00AM"
}
我想將此 JSON 映射到 MUI TextFields,名稱/值對的名稱作為 TextField 標簽,值作為 TextField 值。 我還需要能夠編輯這些值。
這是我的數據數組:
const [singleSizing, setSingleSizing] = useState("");
const fetchSizingData = async (intake_id, sizing_id) => {
setSingleSizing(
await fetch(`/api/fiscalyears/FY2023/intakes/${params.id}/details/questions`).then((response) =>
response.json()
)
);
};
這些是我正在使用的文本字段:
<TextField
value={}
label={}
/>
假設singleSizing
是一個 JSON 對象。 如果沒有,請先映射:
您可以使用Object.entries
從對象中提取鍵/值對,然后在條目上使用.map()
來創建組件。
// ...
return Object.entries(singleSizing).map(sizingEntry => {
const [label, value] = sizingEntry; // e.g. ['Title', 'Data about John Doe']
return <TextField label={label} value={value} />
});
// ...
要編輯這些值,請查看 MUI 表單組件或其他表單庫,並考慮更改狀態的形狀以使更新更容易。
您可以使用.map
和Object.keys
{
Object.key(singleSizing).map(key => (
<TextField
value = {
obj[key]
}
label = {
key
}
/>
))
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.