Electron の API ドキュメントを構造化データに
· 読むのにかかる時間 1 分
本日、Electron のドキュメントに対していくつか改善する点を発表します。 新しいリリースごとに、Electron のすべての公開 API を詳細に説明する JSON ファイル を同梱します。 このファイルを作成したことで、開発者は Electron の API ドキュメントの面白くて新しい使用方法ができるようになりました。
スキーマの概要
各 API は、名前、説明、型などの特性を持つオブジェクトです。 BrowserWindow
や Menu
のようなクラスには、インスタンスメソッド、インスタンスプロパティ、インスタンスイベントなどもあります。
以下は BrowserWindow
クラスを説明しているスキーマからの抜粋です。
{
name: 'BrowserWindow',
description: 'Create and control browser windows.',
process: {
main: true,
renderer: false
},
type: 'Class',
instanceName: 'win',
slug: 'browser-window',
websiteUrl: 'https://electronjs.org/docs/api/browser-window',
repoUrl: 'https://github.com/electron/electron/blob/v1.4.0/docs/api/browser-window.md',
staticMethods: [...],
instanceMethods: [...],
instanceProperties: [...],
instanceEvents: [...]
}
次に、メソッドの説明の例を示します。以下は apis.BrowserWindow.instanceMethods.setMaximumSize
インスタンスメソッドです。
{
name: 'setMaximumSize',
signature: '(width, height)',
description: 'Sets the maximum size of window to width and height.',
parameters: [{
name: 'width',
type: 'Integer'
}, {
name: 'height',
type: 'Integer'
}]
}
新しいデータを使う
開発者がプロジェクトでこの構造化データを簡単に使用できるように、新しい Electron リリースごとに自動公開される小さな npm パッケージ electron-docs-api を作成しました。
npm install electron-api-docs --save
すぐに試したいなら、Node.js REPL 内でこのモジュールを試してみてください。
npm i -g trymodule && trymodule electron-api-docs=apis