Как использовать атрибуты данных с Material Design React? - PullRequest
0 голосов
/ 02 марта 2019

Я недавно начал использовать Material Design React, но я только что обнаружил, что data-someField распространяет значение на карту набора данных.

Пример:

<Input data-role=‘someValue’  onChange={this.onChange} />

onChange = e =>{
           const role = e.target.dataset.role
            const role2 = e.currentTarget.dataset.role
}

Обе роли в обработчике onChange не определены.Этого не произойдет, если я изменю тег Input на обычный ввод html.

Есть идеи, почему Material Design не допускает атрибуты данных или есть какие-то обходные пути?

Спасибоadvance!

--- После предложения @Springer я попытался использовать inputprops, но заметил, что доступен только атрибут name, остальные не определены.

```  <Input
                    value={role.name}
                    disabled={!this.state.editMode}
                    inputProps={{
                      name: 'MyName',
                      role: 'MyRole',

                      dataset: {
                        degree: 'Teniente'
                      },

                      data: {
                        roleId: role.uuid
                      },
                      dataRoleId: {
                        roleId: role.uuid
                      }
                    }}
                    disableUnderline={true}
                    data-role-id={role.uuid}
                    role={role}
                    onChange={this.onChangeExistingRole}
                  /> ```

1 Ответ

0 голосов
/ 02 марта 2019

В api материала реакции они используют inputProps для передачи объекта извлечения (реквизиты, данные ..)

см. doc

inputProps:Атрибуты, примененные к элементу ввода.

...