Событие клика в React JS за сценой работает? - PullRequest
0 голосов
/ 08 сентября 2018

Я играл с React Example, который находится на его официальном сайте:

Этот пример действительно раздражает меня, любезно помогает

Код

class LoggingButton extends React.Component {
  handleClick() {
    console.log('this is:', this);
  }

  render() {
    // This syntax ensures `this` is bound within handleClick
    return (
      <button onClick={(e) => this.handleClick(e)}>             //problematic line
        Click me
      </button>
    );
  }
}

Согласно документации:

Аргумент e, представляющий событие React, будет передан как аргумент

Задача

Я хочу спросить, откуда это e приходит?

Я не определил e, тогда как это работает без ошибок?

Откуда e идет?

в this.handleClick(e), я передаю один аргумент, а handleClick() не получает аргумента, как он работает без ошибок?

1 Ответ

0 голосов
/ 08 сентября 2018

В этом случае e связывается с синтетическим событием , которое аналогично обычным событиям, которые вы получаете при работе с DOM, однако это пытается остаться согласованным независимо от используемого браузера.

Это ничем не отличается от стандартных обработчиков событий, которые также получают объекты событий, с общим , описанным здесь . Рассмотрим стандартное DOM click событие .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...