Оригинальный пост https://github.com/onmyway133/blog/issues/145
Это моя история о том, как я столкнулся со многими зависимостями при попытке упаковать электронное приложение. Спасибо моему другу timkurvers за помощь
Фиксирующее событие
Другой я получил проблему, которая сообщает, что что-то не так с производственной средой. Проблема в том, что я использовал RadioButton, и его обратный вызов onChange
принимает 2 параметра вместо 1.
Примерка упаковки
После исправления я повышаю версию в package.json
и запускаю выпуск пряжи. К моему удивлению, встроенное приложение было пустым. Я попытался win.toggleDevTools()
посмотреть, что происходит. Я больше не могу использовать ярлык, чтобы открыть инструмент разработчика в производстве, но есть инструменты
Консоль говорит, что не может найти модуль реагировать. Затем я представил проблему
Неперехваченная ошибка: не удается найти модуль «реагировать»
Моя среда
- Node v8.4.0
- npm 5.3.0
- yarn 1.3.2
- macOS 10.13.2
Проверка в режиме отладки
Затем мне нужно запустить в режиме отладки, чтобы увидеть, что происходит на самом деле.
DEBUG=electron-packager npm run release
Журнал говорит что-то о npm
Ошибка команды: npm prune — производство
Немного покопавшись, я обнаружил, что это довольно распространенная проблема.
- https://github.com/electron-userland/electron-packager/issues/686
— https://github.com/npm/npm/issues/17781
Я думаю, что проблема может быть из-за того, что я изменил nvm на nodenv
Обновление узла
Последняя стабильная версия nodejs — 8.9.4
. Чтобы nodenv
его увидел, нам нужно
brew upgrade node-build
Запустите следующее, чтобы вы действительно увидели 8.9.4
nodenv install — list
Обновление node.js
Установить версию 8.9.4
nodenv install 8.9.4 nodenv global 8.9.4 nodenv rehash
Обновление нпм
Выполните следующее, чтобы обновить npm
до 5.6.0
npm update -g np
Установка зависимостей с нуля
Очистить старые node_modules и package-lock.json
rm -rf node_modules rm -rf package-lock.json
Затем установите снова
npm install
Упаковка
Последний шаг — снова упаковать приложение.
yarn release