fix(Field): minus can only be placed on the first char (#6303)

This commit is contained in:
desperado 2020-05-19 03:20:54 -05:00 committed by GitHub
parent ee599ddcbe
commit ca827c205e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 4 deletions

View File

@ -4,12 +4,16 @@ export function range(num: number, min: number, max: number): number {
function trimExtraChar(value: string, char: string, regExp: RegExp) {
const index = value.indexOf(char);
if (index > -1) {
return value.slice(0, index + 1) + value.slice(index).replace(regExp, '');
if (index === -1) {
return value;
}
return value;
if (char === '-' && index !== 0) {
return value.slice(0, index);
}
return value.slice(0, index + 1) + value.slice(index).replace(regExp, '');
}
export function formatNumber(value: string, allowDot?: boolean) {

View File

@ -113,4 +113,5 @@ test('formatNumber', () => {
expect(formatNumber('-1.2')).toEqual('-1');
expect(formatNumber('-1.2', true)).toEqual('-1.2');
expect(formatNumber('-1.2-', true)).toEqual('-1.2');
expect(formatNumber('123-')).toEqual('123');
});