我使用react-admin
,我有一个巨大的形式,与一堆自定义验证。它非常慢,即使是构建版本。
我试图找到一种方法来禁用更改的验证并且只在上模糊或。但我还没有找到一个解决方案,甚至变通。
每次在我的输入文本中按下一个键时(例如),验证都会被触发多次,并且需要一段时间才能出现字母。
这就是为什么我想在更改时禁用验证。
这是我的一个表格的例子,我在我的FormTab
中写的每个字母,"验证我";显示。
export const ThemeCreate: FC = (props: any) => (
<Create {...props} title="ui.themes.create" mutationMode="pessimistic">
<TabbedForm
toolbar={<GenericCreateToolbar />}
validateOnBlur
warnWhenUnsavedChanges
validate={() => {
console.log('validate me!');
}}
>
<MainFormTab />
<TranslationsFormTab />
</TabbedForm>
</Create>
);
您需要在表单组件中使用validateOnBlur={true}
道具。
这个道具来自final-form的<Form>
组件,参见本文档页面的最后一个https://final-form.org/docs/react-final-form/types/FormProps