Как запрограммировать кнопку возврата навигационной панели React-native-навигации (не аппаратную кнопку)? - PullRequest
1 голос
/ 04 мая 2019

Я использую библиотеку Wix's Resact-Native-Navigation. Я пытаюсь отсоединить сокетное соединение, когда нажата кнопка «Назад» на панели навигации или проведено пальцем по экрану, чтобы вернуться к предыдущему экрану. Не аппаратное нажатие кнопки назад на андроиде.

Я следовал документам Wix для обработки нажатий кнопок для кнопок верхней панели, расположенных здесь: https://wix.github.io/react-native-navigation/#/docs/topBar-buttons?id=handling-button-press-events

export default class Lobby extends React.Component {
  static options(passProps) {
    return {
      topBar: {
        leftButtons: {
          id: "backButton"
        }
      }
    };
  }

  constructor(props) {
    super(props);
    this.state = {
      username: "",
      queue: []
    };
    Navigation.events().bindComponent(this);
  }
// as a parameter ive tried: {backButton}, "backButton", {buttonId}, and backButton
  navigationButtonPressed(backButton) {
    const socket = io("http://172.31.99.250:3000");
    socket.emit("leaveLobby", this.state.username);
  }

...
}
...