Я использую 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 +)?