Electronで作成したアプリケーションはメインプロセスとレンダラープロセスから構成されています。この二つ部分のデバッグ方法が違います。
Electronのレンダラープロセスがブラウザ(Chrome)のような動きで、ブラウザの開発ツールでHTML、css、javascriptを参照しながら、jsファイルのデバッグを行います。
Electronのメインプロセスがサーバーサイトのようなプログラム(node.js)なので、ネーティブアプリ開発のデバックツールが必要となり、その開発ツールの上でデバッグを行います。
npm install --save-dev devtron
{
    "version": "0.2.0",
    "configurations": [
        {        
            "name": "Debug Main Process",
            "type": "node",
            "request": "launch",
            "env": {"NODE_ENV": "debug"},
            "cwd": "${workspaceRoot}",
            "program" : "${workspaceRoot}/test_1/main.js",
            "runtimeExecutable": "${env:APPDATA}/Roaming/npm/electron",
            "windows": {
              "runtimeExecutable": "${env:APPDATA}/Roaming/npm/electron.cmd"
            },
            "console":"integratedTerminal",
            "args" : ["src"]
        }
   ]
}
	
npm install electron -g
electron -v
npx electron
GitHub上のElectron公式アカウントで公開されているElectron API Demosというデモアプリは、基本的なElectron APIのを具体的にどんなことができるのかを知るのに便利だ。よく使うクラスと使い方が、デモの中で解説されているため、これを見ていけばElectronのAPIで何ができるのかが効率的に理解できる。
//デモアプリのディレクトリ内で、以下のコマンドでアプリを起動 electron .
起動途中で以下のエラーが発生するかもしれないです
Error:Cannot find module 'glob'
//任意のディレクトリで以下のコマンドでglobをインストール npm install glob --save
//デモアプリのディレクトリ内で、以下のコマンドでアプリを起動 electron .
npm install electron -g
electron -v
npx electron
sample ├── index.html ├── main.js └── package.json
npm init
いろいろな質問に答えればよいです。ポイントはいかのようです
package name : 任意の名前でよいです。プロジェクトのフォルダ名と違ってもかまわない
entry point : メインプロセスのファイル名(例:main.js)です。何も入力しなければ、index.jsと自動に定義されます。
ほかの項目に何も入力しなくて良いです
{
  "name": "op_test",
  "version": "1.0.0",
  "description": "",
  "main": "main.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
}
		
var electron = require('electron');
var app = electron.app;
var BrowserWindow = electron.BrowserWindow;
// メインウィンドウはGCされないようにグローバル宣言
let mainWindow;
// 全てのウィンドウが閉じたら終了
app.on('window-all-closed', function() {
  if (process.platform != 'darwin') {
    app.quit();
  }
});
// Electronの初期化完了後に実行
app.on('ready', function() {
  // メイン画面の表示(レンダラプロセスの開始)
  mainWindow = new BrowserWindow({
    width: 800,
    height: 600
  });
  mainWindow.loadURL('file://' + __dirname + '/index.html');   //ローカルのhtmlを表示
  //ウィンドウが閉じられたらアプリも終了
  mainWindow.on('closed', function() {
    mainWindow = null;
  });
});
	ここで、メインプロセスの記述が大半です。レンダラープロセスが一行だけ: mainWindow.loadURL('file://' + __dirname + '/index.html');
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>ElectronApp</title>
  </head>
  <body>
    <p>Hello World</p>
  </body>
</html>
	単純的に「Hello World」を画面に表示させるだけです
electron .
npm install electron -g
electron -v
npx electron
GitHub上のElectron公式アカウントで公開されているElectron API Demosというデモアプリは、基本的なElectron APIのを具体的にどんなことができるのかを知るのに便利だ。よく使うクラスと使い方が、デモの中で解説されているため、これを見ていけばElectronのAPIで何ができるのかが効率的に理解できる。
//デモアプリのディレクトリ内で、以下のコマンドでアプリを起動 electron .
起動途中で以下のエラーが発生するかもしれないです
Error:Cannot find module 'glob'
//任意のディレクトリで以下のコマンドでglobをインストール npm install glob --save
//デモアプリのディレクトリ内で、以下のコマンドでアプリを起動 electron .
npm install electron -g
electron -v
npx electron