Пакетный электронный шаблон реакции не взаимодействует с ipcMain - PullRequest
0 голосов
/ 17 июня 2020

Я использую electronic-react-pipeline и все работает между react, redux, pouchDB и webpack в dev и полупроизводственной сборке из запущенного yarn start. Когда я упаковываю приложение, кажется, что мой процесс ipcMain не получает то, что отправлено от процесса рендеринга. Почему это работает во всех средах, кроме упакованного приложения?

При загрузке, как только мой основной компонент монтируется, он отправляет действие getBuckets:

// Get buckets, includes transactions
export const getBuckets = () => {
  return (dispatch: Dispatch) => {
    dispatch(getBucketsStart());
    console.log('get buckets starting');
    ipcRenderer.send('getBuckets:start');
    ipcRenderer.once('getBuckets:success', (_event, args) => {
      dispatch(getBucketsSuccess());
      console.log('get buckets returning');
      args.forEach((bucket: BucketType) => {
        dispatch(addBucket({ name: bucket.name }));
        getTransactions(bucket.name)(dispatch);
      });
    });
  };
};

Я вижу подтверждение в моем браузере инструменты в упакованном приложении, которые "запускают ведра". Я не вижу «вернуть ведра». Опять же, это отлично работает в dev и версии с запуском yarn start, но не в упакованном приложении.

Вот код main.dev.ts:

// Get bucket names
ipcMain.on('getBuckets:start', async () => {
  console.log('Loading buckets');
  const buckets = await getBuckets();
  mainWindow.webContents.send('getBuckets:success', buckets);
});

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

...