Electronとは?
Electronは、JavaScript、HTML、CSSを使用してデスクトップアプリケーションを構築するためのフレームワークです。ChromiumとNode.jsをバイナリに埋め込むことで、Electronは単一のJavaScriptコードベースを維持し、Windows、macOS、Linuxで動作するクロスプラットフォームアプリを作成できます。ネイティブ開発の経験は必要ありません。
はじめに
Electronアプリの開発とユーザーへの配布のプロセスを案内するチュートリアルから始めることをお勧めします。例とAPIドキュメントも、新しいものを発見するための良い場所です。
Electron Fiddleを使用した例の実行
Electron Fiddleは、Electronを使用して記述され、Electronのメンテナーによってサポートされているサンドボックスアプリです。ElectronのAPIを試したり、開発中に機能のプロトタイプを作成するための学習ツールとしてインストールすることを強くお勧めします。
Fiddleは当社のドキュメントともうまく統合されています。チュートリアルの例を参照すると、コードブロックの下に「Electron Fiddleで開く」ボタンが表示されることがよくあります。Fiddleがインストールされている場合、このボタンは`fiddle.electronjs.org`リンクを開き、例がFiddleに自動的に読み込まれます。コピーペーストは不要です。
- main.js
- preload.js
- index.html
const { app, BrowserWindow } = require('electron/main')
const path = require('node:path')
function createWindow () {
  const win = new BrowserWindow({
    width: 800,
    height: 600,
    webPreferences: {
      preload: path.join(__dirname, 'preload.js')
    }
  })
  win.loadFile('index.html')
}
app.whenReady().then(() => {
  createWindow()
  app.on('activate', () => {
    if (BrowserWindow.getAllWindows().length === 0) {
      createWindow()
    }
  })
})
app.on('window-all-closed', () => {
  if (process.platform !== 'darwin') {
    app.quit()
  }
})
window.addEventListener('DOMContentLoaded', () => {
  const replaceText = (selector, text) => {
    const element = document.getElementById(selector)
    if (element) element.innerText = text
  }
  for (const type of ['chrome', 'node', 'electron']) {
    replaceText(`${type}-version`, process.versions[type])
  }
})
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Hello World!</title>
    <meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline';" />
</head>
<body>
    <h1>Hello World!</h1>
    <p>
        We are using Node.js <span id="node-version"></span>,
        Chromium <span id="chrome-version"></span>,
        and Electron <span id="electron-version"></span>.
    </p>
</body>
</html>
ドキュメントの内容
すべての公式ドキュメントはサイドバーから入手できます。これらは、さまざまなカテゴリとそのカテゴリで期待できる内容です。
- チュートリアル:最初のElectronアプリケーションを作成して公開する方法に関するエンドツーエンドガイド。
- Electronのプロセス:Electronのプロセスとそれらを使用する方法に関する詳細なリファレンス。
- ベストプラクティス:Electronアプリを開発する際に心に留めておくべき重要なチェックリスト。
- 例:Electronアプリに機能を追加するためのクイックリファレンス。
- 開発:その他の開発ガイド。
- 配布:エンドユーザーにアプリを配布する方法を学びます。
- テストとデバッグ:JavaScriptのデバッグ、テストの記述、および高品質のElectronアプリケーションの作成に使用されるその他のツール。
- 参照:Electronプロジェクトの動作と構成方法をよりよく理解するための便利なリンク。
- コントリビューション:Electronのコンパイルとコントリビューションは困難な場合があります。このセクションでは、それをより簡単にするよう努めています。
ヘルプの入手
どこかに詰まっていますか?調べてみる場所をいくつか紹介します。
- アプリの開発に関するヘルプが必要な場合は、コミュニティDiscordサーバーで、他のElectronアプリ開発者からアドバイスを得ることができます。
- `electron`パッケージのバグが発生していると思われる場合は、GitHubの問題トラッカーで、既存の問題に一致する問題がないかを確認してください。ない場合は、バグレポートテンプレートに記入して、新しい問題を送信してください。