第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

JavaScript 數(shù)組對(duì)象值更新 (React)

JavaScript 數(shù)組對(duì)象值更新 (React)

慕斯709654 2023-04-20 17:10:27
您好,我正在嘗試更新表中的行值 (React Ant Ui),它在我使用靜態(tài)數(shù)據(jù)時(shí)有效。比如我的靜態(tài)數(shù)據(jù)表數(shù)據(jù)是[    {      "questionNumber": "",      "questionType": "",      "marks": "",      "numberOfOptions": "",      "correctOptions": "",    },    {      "questionNumber": "",      "questionType": "",      "marks": "",      "numberOfOptions": "",      "correctOptions": "",    },  ]我使用以下方法更新行數(shù)據(jù)-  const onInputChange: any = (key, index) => (    e: React.ChangeEvent<HTMLInputElement>  ) => {    const newData = [...tableData];    newData[index][key] = (e);    setTableData(newData);  };如果我想更新它的標(biāo)記,index 1它工作得很好。但是我需要更新動(dòng)態(tài)數(shù)據(jù)。我遵循了這種方法const [tableData, setTableData] = useState<any>([]);然后單擊按鈕,我將動(dòng)態(tài)數(shù)組值推送到表數(shù)據(jù)中,就像這樣setTableData(Array(3).fill(newObj))newObj價(jià)值在哪里  const newObj = {      "questionNumber": "",      "questionType": "",      "marks": "",      "numberOfOptions": "",      "correctOptions": "",    }但是現(xiàn)在我面臨一個(gè)問(wèn)題,如果我想改變 的值marks,它會(huì)更新所有的索引marks如何像靜態(tài)數(shù)組一樣更新此動(dòng)態(tài)數(shù)組的單個(gè)索引值?
查看完整描述

2 回答

?
慕容3067478

TA貢獻(xiàn)1773條經(jīng)驗(yàn) 獲得超3個(gè)贊

您可以深度克隆對(duì)象數(shù)組。

JavaScript 對(duì)象是引用。所以newObj被數(shù)組的每個(gè)槽引用。

setTableData(JSON.parse(JSON.stringify(Array(3).fill(newObj))))



查看完整回答
反對(duì) 回復(fù) 2023-04-20
?
翻閱古今

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超5個(gè)贊

不要替換整個(gè) tableData 狀態(tài),請(qǐng)嘗試僅更新 tableData 狀態(tài)引用中更改的內(nèi)容。

const newData = Array(3).fill(newObj)
setTableData({... tableData, ...newData});


查看完整回答
反對(duì) 回復(fù) 2023-04-20
  • 2 回答
  • 0 關(guān)注
  • 212 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)