Merge "fix: Fix the validate message for some fields with empty value"
This commit is contained in:
commit
17f029b8ad
@ -259,7 +259,9 @@ export default class FormItem extends React.Component {
|
||||
|
||||
getSelectTableValidator = (rule, value) => {
|
||||
if (!value || value.selectedRowKeys.length === 0) {
|
||||
return Promise.reject(t('Please select!'));
|
||||
return Promise.reject(
|
||||
new Error(rule.placeholder || `${t('Please select')}${rule.label}!`)
|
||||
);
|
||||
}
|
||||
return Promise.resolve();
|
||||
};
|
||||
@ -288,6 +290,7 @@ export default class FormItem extends React.Component {
|
||||
name,
|
||||
hidden,
|
||||
label,
|
||||
placeholder,
|
||||
} = this.props;
|
||||
if (hidden) {
|
||||
return [];
|
||||
@ -299,9 +302,16 @@ export default class FormItem extends React.Component {
|
||||
const newRule = {};
|
||||
const requiredRule = {};
|
||||
if (required) {
|
||||
if (tip && type.indexOf('select-table') < 0) {
|
||||
if (type && type.includes('select-table')) {
|
||||
requiredRule.required = true;
|
||||
requiredRule.message = `${t('Please input') + label}!`;
|
||||
requiredRule.validator = (rule, value) =>
|
||||
this.getSelectTableValidator({ ...rule, ...this.props }, value);
|
||||
} else if (type && type.includes('select')) {
|
||||
requiredRule.required = true;
|
||||
requiredRule.message = placeholder || `${t('Please select') + label}!`;
|
||||
} else if (tip) {
|
||||
requiredRule.required = true;
|
||||
requiredRule.message = placeholder || `${t('Please input') + label}!`;
|
||||
} else {
|
||||
newRule.required = required;
|
||||
}
|
||||
@ -311,9 +321,7 @@ export default class FormItem extends React.Component {
|
||||
}
|
||||
if (validator) {
|
||||
newRule.validator = validator;
|
||||
} else if (type.indexOf('select-table') >= 0 && required) {
|
||||
newRule.validator = this.getSelectTableValidator;
|
||||
} else if (type.indexOf('textarea') >= 0 && name === 'description') {
|
||||
} else if (type && type.includes('textarea') && name === 'description') {
|
||||
newRule.validator = this.getDescriptionValidator;
|
||||
}
|
||||
if (!isEmpty(newRule)) {
|
||||
|
@ -171,6 +171,7 @@ export class BaseStep extends Base {
|
||||
{
|
||||
name: 'flavor',
|
||||
label: t('Specification'),
|
||||
type: 'select-table',
|
||||
component: (
|
||||
<FlavorSelectTable isIronic="true" onChange={this.onFlavorChange} />
|
||||
),
|
||||
|
@ -110,6 +110,7 @@ export class Resize extends ModalAction {
|
||||
{
|
||||
name: 'newFlavor',
|
||||
label: t('Flavor'),
|
||||
type: 'select-table',
|
||||
component: (
|
||||
<FlavorSelectTable flavor={flavor} onChange={this.onFlavorChange} />
|
||||
),
|
||||
|
@ -109,6 +109,7 @@ export class ResizeOnline extends ModalAction {
|
||||
{
|
||||
name: 'newFlavor',
|
||||
label: t('Flavor'),
|
||||
type: 'select-table',
|
||||
component: (
|
||||
<FlavorSelectTable
|
||||
flavor={flavor}
|
||||
|
@ -363,6 +363,7 @@ export class BaseStep extends Base {
|
||||
{
|
||||
name: 'flavor',
|
||||
label: t('Specification'),
|
||||
type: 'select-table',
|
||||
component: this.getFlavorComponent(),
|
||||
required: true,
|
||||
wrapperCol: {
|
||||
|
Loading…
x
Reference in New Issue
Block a user