Приложение Electron React прекрасно работает в разработке, но не после того, как оно было упаковано - PullRequest
0 голосов
/ 27 июня 2018

Я создал приложение Electron, используя React. Я использую Electron-prebuilt-compile для правильной работы с React. Все отлично работает, когда я разрабатываю и просто запускаю его с npm start. Я закончил версию 1 и мне нужно было упаковать ее для установки на другие компьютеры. Я использую Электрон-строитель, чтобы сделать это с. Я смог выполнить это без ошибок. Затем я запускаю .exe-файл, который он произвел, и в итоге получаю ошибку «Неожиданный токен» (он указывает на импорт). Это похоже на то, как если бы я упаковал его, он больше не мог сказать, что такое импорт / экспорт, и я подумал, для чего нужен электронный сборочный компилятор. Есть ли что-то, что я мог бы упустить? Я следовал нескольким различным руководствам, а также попробовал другой сценарий упаковки и получил те же результаты.

Вот мой репо для проекта: Нажмите здесь для GitHub Repo

Если вы хотите протестировать его, вам нужно будет создать тестовую базу данных Firebase. Затем создайте файл .env точно так же, как показано ниже, но с вашей информацией о базе данных. Или просто добавьте информацию прямо в файл app.jsx.

FIREBASE_APIKEY = 
FIREBASE_AUTHDOMAIN = 
FIREBASE_DATABASEURL = 
FIREBASE_PROJECTID = 
FIREBASE_STORAGEBUCKET = 
FIREBASE_MESSAGINGSENDERID = 

1 Ответ

0 голосов
/ 30 июня 2018

Что сработало для меня в аналогичной ситуации, так это удаление electron из зависимостей, как бы странно это ни звучало. На самом деле вам это не нужно, потому что electron-prebuilt-compile предоставляет свою собственную версию электрона (доступную как electron), которая работает с React и ES6. Это тот электрон, который вы хотите использовать, а не обычный electron, который не работает с этими вещами из коробки.

Ознакомьтесь с документацией по электронной сборке, собранной здесь, https://www.npmjs.com/package/electron-prebuilt-compile,, где написано "Теперь вы можете просто запустить electron для запуска электрона:"

И вот все различные «электронные» зависимости в моем рабочем проекте (возможно, некоторые дублируют):

"electron-forge": "^5.2.2",
"electron-prebuilt-compile": "2.0.0"
"electron-compile": "^6.4.2",
"electron-rebuild": "^1.7.3",
"electron-squirrel-startup": "^1.0.0",
"electron-window-state": "^4.1.1",
...