В пользовательских интерфейсах вполне нормально, что что-то должно быть отправлено, когда пользователь нажимает ввод. В старые времена это обрабатывалось известным и печально известным тегом формы.

Хотя обычно мы не хотим, чтобы тег формы отправлял что-то на сервер непосредственно в React, мы все же можем использовать его для его ввода-поведения:

let myComponent = (props) => (
  <form onSubmit={handleSubmit}>
    <input />
  </form>
)
function handleSubmit(e) {
  e.preventDefault(); // Remmember to call preventDefault
  console.log("Enter pressed"); 
}

В качестве дополнительного преимущества ваши мобильные пользователи получат специальную кнопку отправки прямо на экранной клавиатуре (по крайней мере, на iOS).

Я думаю, что это намного проще, чем слушать события клавиш и проверять, является ли нажатая клавиша клавишей ввода.

Обновление: Томас Б. Хомбург (@homborg) любезно заметил, что если у вас есть более одного ввода в теге формы, вам нужно добавить кнопку, чтобы функция ввода работала. Это не специфично для React. Также обратите внимание, что тег кнопки по умолчанию меняется с типа button на тип submit внутри тега формы. Как правило, всегда полезно иметь видимую кнопку в качестве альтернативы нажатию ввода.