如何使用 redux-form 验证在全局验证中使用翻译

How to use translation in global validation with redux-form validation

当尝试使用此代码在全局验证器中使用验证时:

errors.fieldMissing = [translate('aor.validation.fieldMissing')];

我收到以下错误:

Warning: Failed prop type: Invalid prop `errorText` supplied to `TextField`, expected a ReactNode.

没有 translation(),只需将错误设置为字符串数组,一切都按预期进行。

如何在全局验证中使用 translation()?

例如(编辑自AOR example posts):

<SimpleForm defaultValue={{ average_note: 0 }} validate={(values, props) => {
    const errors = {};
    ['title', 'teaser'].forEach((field) => {
        if (!values[field]) {
            errors[field] = [props.translate('aor.validation.required')];
        }
    });
...

translate hoc 和 translate 道具的简短示例:

import { translate as translator } from 'admin-on-rest';
const Title = translator(({ record, translate }) => <span>{record ? translate('title.product', { name: record.name }) : ''}</span>);