ReactJs + Electron - разъем работает только после перезагрузки - PullRequest
0 голосов
/ 22 апреля 2020

Я работаю над небольшим проектом, использующим реаги и электрон, приложение подключается к сокету лиги легенд, который читает данные из игры, используя эту библиотеку (https://league-connect.supergrecko.dev/docs/api).

Чтобы заставить электрон и библиотеку работать внутри, я использую:

window.ipcRenderer = require("electron").ipcRenderer;
window.league_connect = require("league-connect");

И затем я использую window.league_connect, чтобы использовать его в реакции. Затем в компоненте я создаю сокет и начинаю прослушивать событие.

window.league_connect.connect(this.props.lcuConnector.connection)
      .then((socket) => {
        this.socket = socket;
        console.log("conected to socket");
        this.subscribeChampSelection();
      })
      .catch((err) => {
        console.log(err);
      });

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

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

Есть ли причина для этого? Спасибо за ваше время и извините, если я неправильно произношу некоторые слова, я не слишком хорош в английском sh.

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