SANmq

Results 2 comments of SANmq

validateTrigger 为 onBlur没生效的原因找到了。因为源码中有一个WithValueFomFiledProps组件分隔了form.item和表单组件间的props传递。其中有一个判断 `const isProFormComponent = // @ts-ignore filedChildren?.type?.displayName !== 'ProFormComponent';` 如果为false的话会导致很多props不会透传给antd的form.item。这个干嘛用的不太清楚。 所以解决方案可以是给自己自定义的组件加上 displayName ="ProFormComponent" 属性就能解决。 不过这个应该不是最终解决方案,还是得看它原来是要干嘛 @chenshuai2144

重新看了一下就是onBlur没有传进去,跟isProFormComponent无关。 `const { children: filedChildren, onChange, onBlur, ignoreFormItem, valuePropName = 'value', ...restProps } = formFieldProps;` `omitUndefined({ ...restProps, [valuePropName]: formFieldProps[valuePropName], ...filedChildren.props, onChange: finalChange, fieldProps, })` 就是restProps中没有onBlur了,所以没有透传给proformItem下的组件