表單設(shè)置默認(rèn)值
有這樣的需求 我開啟優(yōu)惠 價(jià)格需要禁用然后價(jià)格里面輸入框的值全部清空
之前一直用這個(gè)form.setFieldsValue({})
來設(shè)置表單的默認(rèn)值瓦戚,現(xiàn)在我的Form.Item
不是單一的字符串name,
而是數(shù)組的形式怎披,如果這樣我們要改那一列的值 就需要用到form.setFields([{name: [name, index, "price"], value:null}])
來修改,
{
title: '是否開啟優(yōu)惠',
render: (text, record, index) => {
return <Form.Item name={[name, index, "effectValue"]} style={{ textAlign: 'center' }} >
<Switch size='small' onChange={(e) => {
}} />
</Form.Item>
}
},
{
title: <span className='required'>價(jià)格(元/PCS)</span>,
render: (text, record, index) => {
return <Form.Item name={[name, index, "price"]} rules={[{ required: !isGoName.includes(record.productClass), message: '請輸入價(jià)格(元/PCS)' }]}>
</Form.Item>
}
}
hook保存值無效的問題
問題
當(dāng)我點(diǎn)擊刪除的時(shí)候 可以拿到我的數(shù)據(jù)data.splice(index,1)
,然后就直接setDate(data),理想情況下應(yīng)該就是刪除了我想要?jiǎng)h除的那一行的數(shù)據(jù)
解決方法
返回一個(gè)新的數(shù)組
setData([...data])
或者setData(data.slice())