-
一个form同时存在一个实例
const form = Form.useFormInstance();使用这个可以直接获取父级form表单,而不使用props -
onChange就算表单项被禁了,只要它的值变化了,还是一样的会被触发
-
error一旦发生,是会导致上下文直接截断不执行,这时候不看控制台很难发现问题,哪怕是一些类型转换,所以,ts报错还是要注意一下;
-
函数默认值是只有两种情况才会使用默认值,
- 调用函数时未传递该参数
- 调用函数时传递的参数值为undefined
如果传递的是空就相当于还是传了,而不会使用默认值;
5.SchemaForm使用的是BetaSchemaForm,这是Ant Design Pro的组件。在BetaSchemaForm中,valuePropName需要在formItemProps中配置,而不是直接在SchemaItem中。
//失效
{
title: '通知',
dataIndex: 'notify',
valuePropName: 'checked',
renderFormItem: () => {
return (
<Switch/>
);
},
}
//有效
{
title: '通知',
dataIndex: 'notify',
formItemProps: {
valuePropName: 'checked',
},
renderFormItem: () => {
return (
<Switch />
);
},
},
6.forceRender强制渲染,即刚开始就渲染,而不是采用延迟渲染,这个的作用一般是为了让一些父组件拿到子组件的信息,比如说,Form表单的值的获取;