JavaScript で デスクトップアプリ が簡単に作れる Electron を試してみたいと思います。
準備
Node.js がインストールされている前提で進めていきます。
1 | node -v |
Electronアプリ を作る
Electron は Node.js によってパッケージ管理されているため、新規フォルダを作って プロジェクト を作成する必要があります。
npmパッケージ を作成
新規フォルダ内で下記コマンドを実行し「package.json」を作成します。
1 | npm init |
今回は「Hello-world」というアプリフォルダ名で作業して行きます。
初期化時の設定は下記の通りです。
- package name: hello-world(初期値)
- version: 1.0.0(初期値)
- description: 未入力
- entry point: main.js
- test command: 未入力
- git repository: 未入力
- keywords: 未入力
- author: 未入力
- license: ISC(初期値)
変更点は entry point だけですね。index.js はメイン画面で使うので Electron では main.js に変更しました。
新規フォルダ内に「package.json」が作られました。
package.json を修正
「package.json」を作ったばかりですが、内容を一部修正します。
1 | "scripts": { |
の部分を下記に修正します。
1 | "scripts": { |
これを忘れると Electron の実行が出来ませんので忘れずに修正しましょう。
Electron をインストール
次に Electronパッケージ をインストールします。
アプリフォルダ内で下記コマンドを実行し Electron をインストールします。
1 | npm install --save-dev electron |
アプリフォルダ内に「node_modules」フォルダと「package-lock.json」ファイルが作成されます。
Electron用 JavaScript の作成
まず初めに Electron を制御するための JavaScript を作成します。
アプリフォルダ内に「main.js」ファイルを新規作成します。
「main.js」に下記をコピペします。
1 | const { app, BrowserWindow } = require('electron'); |
これで Electronアプリ の起動準備が出来ました。
次に Electronアプリ内に表示する画面を作ります。
先程 index.html を読み込むように書いたので「index.html」を作ります。
「index.html」に下記をコピペします。
1 | <!DOCTYPE html> |
アプリの実行
ここまで出来れば Electronアプリ を実行することが出来ます。
コマンドプロンプトに下記を入力して Electronアプリ を実行してみます。
1 | npm run test |
エラーが出る場合は?
D:\Electron\Hello-world>npm run start
npm ERR! missing script: start
「スクリプトの start なんて無いぜ」と言ってます。
「package.json」の scripts 修正忘れていませんか? 少し記事をさかのぼって違いを探してみましょう。
デバッグを簡単にする
このままでもいいですが、実行するたびに「npm start」を入力するのは手間だと思います。
なので デバッグ実行の構成 を作ります。
VS Code の 実行アイコンを押して「launch.json ファイルを作成します」をクリック。
「Node.js」を選択。
「構成の追加」を押して「Run “npm start” in a debug terminal」を選択したら設定完了です。
launch.json を保存してから デバッグ実行の構成を「Run npm start」に変えます。
最後に「F5キー」を押すか デバックの開始 を押せば Electronアプリを実行できます。
「停止」ボタンを押せば終わらせることが出来ます。
終わりに
一番簡単な Electronアプリ が完成しました。
次回は、Electronアプリ をパッケージングして 配布できるようにします。
あとは、もう少し凝ったことをやってみたいと思っています。