Формат входной валюты реагирует на избыточную форму - PullRequest
1 голос
/ 25 марта 2020

Я использую Redux-форму (https://github.com/redux-form/redux-form) для моего ReactJs приложения. Есть поле для отображения входного значения в качестве валюты.

, когда пользователь вводит 24000 , я хочу показать его в текстовом поле как 24,000

Затем я попробовал это как показано ниже

const currencyFormatter = value => 
    value && 
    new Intl.NumberFormat('en-US', {
        maximumSignificantDigits: 3
    }).format(value)

  renderField(field) {
        const { meta: { touched, error } } = field;
        const className = `form-group ${touched && error ? "has-danger" : ""}`;
        return (
            <div className={className}>
                <label for={field.name}>{field.label}</label>
                <input className="form-control"
                    type={field.type || 'tel'}
                    name={field.name}
                    disabled={field.disabled}
                    {...field.input}
                    placeholder={field.placeholder}
                />
                <p className="text-danger mb-0">{touched ? error : ""}</p>
            </div>
        )
    }

<Field 
component={this.renderField} 
normalize={currencyFormatter}
name="credit" type="number" />

Но я получаю вражду в консоли браузера

реаги-дом.девелопмент. js: 2427 Указанное значение «24 000» не является допустимым числом. Значение должно соответствовать следующему регулярному выражению: -? (\ D + | \ d +. \ D + |. \ D +) ([eE] [- +]? \ D +)?

...