pro-components
pro-components copied to clipboard
🧐[问题]ProForm 有没有类似 ProTable 中的 actionRef.reload()方法 formRef.reload() 重新请求一次request后赋值表单?
trafficstars
如题
formRef?.current?.resetFields?.() 就是重置
如果后台数据会变 那就直接调用 formRef?.current?.setFieldsValue?.({}) 赋值就行了
formRef?.current?.resetFields?.() 就是重置
如果后台数据会变 那就直接调用 formRef?.current?.setFieldsValue?.({}) 赋值就行了
这个方法会重置form表单 但是不会重新request请求,数据还是不会变化。request是proform的props 场景就是 form表单中嵌套了一个组件 只能将formRef传给该组件,在这个组件中操作完后,需要使用formRef 重载request更新表单数据
https://github.com/ant-design/pro-components/issues/7523 类似的问题,为什么没有一个重新 request 的方法呢,有点奇怪
在 request 里自己实现个参数合并可以解决,不过不优雅:
let mergedParams= params;
const formParams = await proFormRef.current?.getFieldsValue();
mergedParams= { ...mergedParams, ...pickBy(formParams, Boolean) };
