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

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

如何使用 onClick 方法刪除對(duì)象并更新數(shù)組

如何使用 onClick 方法刪除對(duì)象并更新數(shù)組

莫回?zé)o 2023-06-09 10:59:57
我正在從 skidList 數(shù)組創(chuàng)建列表并處理每個(gè) skid 上的復(fù)制和刪除操作以及單擊刪除按鈕我調(diào)用的deleteSkid方法刪除該索引處的 skid 并更新列表。但是,它不是刪除特定索引處的 skid,而是刪除數(shù)組列表中的最后一個(gè) skid。const CreateNewTab = () => {  const [skidList, setSkidList] = useState([]);  const [productNameMap, setproductNameMap] = useState({});  useEffect(() => {    let skidList = [];    let newSkid = {};    newSkid["2"] = "0";    newSkid["3"] = "0";    newSkid["4"] = "0";    skidList.push(newSkid);    setSkidList([...skidList]);    let productNameMap = {};    productNameMap["2"] = "PEN";    productNameMap["3"] = "PENCIL";    productNameMap["4"] = "ERASER";    setproductNameMap({ ...productNameMap });  }, []);  const updateProductQuantity = (skid, key, newQuantity, index) => {    console.log("Inside update Skid Quantity Index= " + index);    skid[key] = newQuantity;    let newSkidList = skidList;    newSkidList.splice(index, 1, skid);    console.log(newSkidList);    setSkidList([...newSkidList]);  };  const deleteSkid = (index) => {    console.log(index);    let newSkidList = skidList;    newSkidList.splice(index, 1);    console.log("Skid deleted from: " + newSkidList);    setSkidList([...newSkidList]);  };  const insertSkid = (skid) => {    setSkidList(skidList.concat([{ ...skid }]));  };  return (    <div>      {skidList.flatMap((skid, index) => (        <div style={{ marginRight: "0", paddingRight: "0" }}>          <Row style={{ margin: "0", padding: "0" }}>            <Col span={19}>              {Object.keys(skid).map((key) => (                <Row>                  <Col span={16}>                    <h6>{productNameMap[key.toString()]}</h6>                  </Col>                  <Col span={8}>                    <InputNumber                      min={0}                      defaultValue={skid[key]}
查看完整描述

2 回答

?
qq_遁去的一_1

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

似乎它與 react 如何回收 dom 或其他東西有關(guān),該項(xiàng)目確實(shí)從數(shù)組中刪除但不知何故該值保留在 dom 中,因?yàn)槟谳斎胫惺褂枚皇?,進(jìn)行這個(gè)小改動(dòng)defaultValuevalue會(huì)工作

value={skid[key]}

查看完整回答
反對(duì) 回復(fù) 2023-06-09
?
慕婉清6462132

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

您的實(shí)現(xiàn)deleteSkid()很好,但是您將值傳遞給 asInputNumber所以defaultValue當(dāng)組件重新渲染時(shí)它不會(huì)改變。只需將其替換為value,它就可以工作。


<InputNumber

  min={0}

  value={skid[key]}

  rules={[

    {

      required: true,

      message: "Please input quantity!"

    }

  ]}

  onChange={(newQuantity) => {

    updateProductQuantity(skid, key, newQuantity, index);

  }}

/>


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

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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