当删除右侧查询条件的某一行时,其他行的组件值会重新渲染,导致之前填的值被清空。
我代码是这样写的:每一行是一个子组件,子组件是根据columnItems数组渲染的,删除的时候就是删除数组里的一个column
每个子组件返回的是一个Form表单
当删除右侧查询条件的某一行时,其他行的组件值会重新渲染,导致之前填的值被清空。
我代码是这样写的:每一行是一个子组件,子组件是根据columnItems数组渲染的,删除的时候就是删除数组里的一个column
每个子组件返回的是一个Form表单
删除之前用form.getfieldsValue方法获取form的值,记录一下formData;
删除之后,将formData中对应的删掉,调用form.setFieldsValue设置一下就行了。
13 回答13k 阅读
8 回答2.8k 阅读
2 回答5.2k 阅读✓ 已解决
5 回答1.4k 阅读
3 回答2.3k 阅读✓ 已解决
3 回答990 阅读✓ 已解决
5 回答1.6k 阅读✓ 已解决
这里的columnItems最好别变,需删除的给它标记一下,然后给display:none,发送参数的时候会自动把这些隐藏的过滤掉。
并且,最好每个组件都按照顺序有一个key={index},这样组件的兄弟们删来增去的,自身的key不变,就不会重新渲染。
希望能帮助到你。