Отправить объект события в обратные вызовы без event.persist - PullRequest
0 голосов
/ 10 сентября 2018

У меня есть компонент, который внутренне рендерит вход, реквизит onBlur для этого входа подключен к этому входу.Вот упрощенный пример:

componendDidUpdate(prevProps, prevState) {
    if (prevState.blur !== this.state.blur) {
        this.props.onBlur(event);
    }
}
render() {
    return <input onFocus={this._handleFocus} onBlur={this._handleBlur} />
}
_handleFocus = event => {
    this.setState({blur: false});
}
_handleBlur = event => {
    event.persist();
    this._lastEvent = event;
    this.setState({blur: true});
}

Я хочу уведомить размытие в CDU, потому что есть много событий, которые могут вызвать событие размытия при взаимодействии внутри самого компонента.Но я хочу уведомить пользователя компонента только тогда, когда он переходит из состояния фокусировки в размытое состояние.Но проблема в том, что я не могу получить доступ к объекту события асинхронно, поэтому единственное решение - это сделать event.persist ().Но React Docs говорит, что это делает пул событий из соображений производительности.Можно ли как-то достичь того же эффекта, не сохраняя события?

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