У меня есть этот компонент:
...
onInputChange = evt => {
const target = evt.target;
let value = null;
if (target.nodeName === "INPUT")
value = target.value; //works well
else if (target.nodeName === "SPAN")
value = target.innerText; //works well
const name = target.name; //works well if it's the input, doesn't if it's the span
this.setState({[name]: value});
}
render() {
...
<input name="myFirstValue" onChange={onInputChange} />
<span name="mySecondValue" contentEditable="true" onInput={onInputChange}></span>
...
}
...
Когда это input
, которое запускает событие, оно работает хорошо.Но проблема в том, что когда span
: target.name
возвращает undefined
, а не 'mySecondValue'
.
Это ошибка в React?Если да, есть ли обходной путь?
Спасибо за вашу помощь.