[英]Using final-form-array in a nested object
我有一个场景,我有多个网格,并且在每个网格中可以有多行可以删除。
{
document: [{
rows: [{
make: "Tesla"
}]
}
我想做类似<FieldArray name="document[0]">
这样的事情,我可以给网格添加和删除功能,但似乎 fieldarray 只需要单个节点。 有没有办法解决这个问题,还是我做错了什么?
最初我有document1: { [{...fields}] }
所以 useField 看起来像这样:
useField(`${fieldKey}${fieldIndex}[${rowIndex}].${field}`)
但我想使用 yup 模式验证,因为 ag-grid 和单元级别验证的问题,所以我认为如果我使用通用密钥会更容易。
fields.removeBatch(gridApi.getSelectedNodes().map(({ rowIndex }) => rowIndex));
原来我使用了错误的路径。 我需要使用
<FieldArray name={`${fieldKey}.${fieldIndex}.rows`}>
这与新结构相匹配。 所以 FieldArray 确实支持嵌套对象,您只需要正确命名即可。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.