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