fix number field default value

This commit is contained in:
Michael Schramm 2020-06-10 17:45:46 +02:00
parent e7b5fc50b4
commit c448cac85a
4 changed files with 15 additions and 4 deletions

View File

@ -17,6 +17,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- yes / no field fixed on admin and user view
- prev property error on div
- rating field default on admin
- number field defaults
### Security

View File

@ -12,8 +12,12 @@ export const NumberType: React.FC<AdminFieldTypeProps> = (props) => {
label={t('type:number:default')}
name={[props.field.name as string, 'value']}
labelCol={{ span: 6 }}
getValueFromEvent={(value: number) =>
typeof value === 'number' ? value.toFixed(2) : value
}
getValueProps={(value: string) => ({ value: value ? parseFloat(value) : undefined })}
>
<InputNumber />
<InputNumber precision={2} />
</Form.Item>
</div>
)

View File

@ -14,8 +14,10 @@ export const RatingType: React.FC<AdminFieldTypeProps> = (props) => {
name={[props.field.name as string, 'value']}
labelCol={{ span: 6 }}
extra={t('type:rating.clearNote')}
getValueFromEvent={(value: number) => (value !== undefined ? value.toFixed(1) : undefined)}
getValueProps={(value: string) => ({ value: parseFloat(value) })}
getValueFromEvent={(value: number) =>
typeof value === 'number' ? value.toFixed(2) : value
}
getValueProps={(value: string) => ({ value: value ? parseFloat(value) : undefined })}
>
<Rate allowHalf allowClear />
</Form.Item>

View File

@ -12,7 +12,11 @@ export const NumberType: React.FC<FieldTypeProps> = ({ field, design }) => {
{ type: 'number', message: 'Must be a valid URL' },
{ required: field.required, message: 'Please provide Information' },
]}
initialValue={parseFloat(field.value)}
initialValue={typeof field.value === 'number' ? parseFloat(field.value) : undefined}
getValueFromEvent={(value: number) =>
typeof value === 'number' ? value.toFixed(2) : value
}
getValueProps={(value: string) => ({ value: value ? parseFloat(value) : undefined })}
>
<StyledNumberInput design={design} size={'large'} />
</Form.Item>