Запуск Electron напрямую (electron app.js ) по сравнению с запуском из package.json script (npm run electron)

#node.js #npm #electron

#node.js #npm #electron

Вопрос:

У меня есть простое приложение для электронного лотка со следующим источником:

 const { app, Tray, Notification, Menu, nativeImage } = require('electron');
const path = require('path');

const iconPath = path.join(__dirname, 'assets/icons/iconTemplate.png');

let tray = null;

app.whenReady().then(() => {
    try {
        console.log(iconPath);
        tray = new Tray(nativeImage.createFromPath(iconPath));
        tray.setToolTip('Electron app');
    } catch (e) {
        console.log(e);
    }
})
  

Вот package.json :

 {
  "name": "Electron app",
  "version": "0.0.1",
  "description": "",
  "main": "app.js",
  "scripts": {
    "electron": "electron app.js",
    "test": "echo "Error: no test specified" amp;amp; exit 1",
    "package-linux": "electron-packager . --overwrite --icon=assets/icons/256x256.png --out=release-builds",
    "deb64": "electron-installer-debian --config config/build-config.json"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    ...
  },
  "devDependencies": {
    ...
  }
}
  

введите описание изображения здесь

Когда я запускаю приложение с electron app.js , ничего не происходит. Но когда я запускаю npm run electron (который запускает скрипт из package.json), приложение работает. В чем разница?

Комментарии:

1. Не могли бы вы добавить свой package.json к этому сообщению? Может быть полезно при оценке сценариев.

2. что находится main в вашем package.json и установлены ли вы electron глобально?

3. @AlecBreton я добавил package.json . @Yanikus Да, я установил electron глобально и main указывает на app.js (опубликована структура каталогов).