Ошибка типа: Не удается прочитать свойство «нажатие» неопределенной ссылки на кнопку выхода из системы

#reactjs #react-router

Вопрос:

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

 TypeError: Cannot read property 'push' of undefined
 

Искал много сообщений, пробовал withRouter, который работал в более ранних версиях, однако это не работает в v6 react-router-dom. Попробовал использовать навигацию, однако это тоже не сработало.

Код:

 
import React, { Component } from 'react';

class Logout extends Component {
  logout() {
    this.props.history.push('/');
    this.props.keycloak.logout();
  }

  render() {
    return <button onClick={() => this.logout()}>Logout</button>;
  }
}
export default Logout;

 

Комментарии:

1. Можете ли вы показать, как вы используете свой компонент выхода из системы? withRouter следует указать this.props.history , если используется правильно, так что, по-видимому, в этой части есть опечатка…