Как изменить имя ввода с помощью материалов-пользовательского интерфейса? - PullRequest
0 голосов
/ 02 февраля 2019

Об интеграции материалов-ui-pickers отсюда https://material -ui-pickers.firebaseapp.com / использование с моментом. Я получаю только объект Moment в моем обработчике на onChange вместо входных данных с именеми значение (e.target имеет имя и значение в конкретном входе).Кто-нибудь может подсказать, как я могу узнать, какие входные данные были изменены в моей форме и иметь около 10 входных данных в моей форме?

Ответы [ 2 ]

0 голосов
/ 21 февраля 2019

Вы также можете использовать onInputChange проп.Отправляет дату обновления при каждом нажатии клавиши

<DatePicker
  onInputChange=((e) => console.log(e.target.value))
/>
0 голосов
/ 02 февраля 2019

При рендеринге ваших входов вы должны предварительно сконфигурировать то, что будет отправлено каждой функции обработки изменений:

{['A', 'B', 'C',...].map(key => <DatePicker key={key} value={selectedDate} onChange={this.handleDateChange(key)} />}

Теперь вы можете создать функцию обработки, способную принимать 2 набора параметров, один дляключ, а другой для события:

handleDateChange = key => date => {
    this.setState({ [key]: date });
};

Теперь, используя вычисленные параметры, вы можете динамически устанавливать значение в своем состоянии, не зная заранее, какое из них.

...