2015-09-08 07:47:29 +00:00
|
|
|
|
# Synopsis
|
|
|
|
|
|
|
|
|
|
所有的 [Node.js's 內建模組](http://nodejs.org/api/) 都可以在 Electron 使用,而且
|
|
|
|
|
第三方的 node 模組同樣的全部支援(包含[原生模組](../tutorial/using-native-node-modules.md))
|
|
|
|
|
|
|
|
|
|
Electron 也提供一些額外的內建模組用來開發原生桌面應用程式,一些模組只可以使用在主行程上
|
|
|
|
|
(main process) 一些只可以使用在渲染行程 (renderer process) 上 (網頁) ,另外還有一些
|
|
|
|
|
模組在兩邊的行程都可以使用。
|
|
|
|
|
|
|
|
|
|
基本的規則是: 如果一個模組是 [GUI](https://zh.wikipedia.org/wiki/%E5%9B%BE%E5%BD%A2%E7%94%A8%E6%88%B7%E7%95%8C%E9%9D%A2)
|
|
|
|
|
或者是 low-level 與系統相關的,那麼它就應該只能在主行程上使用 (main process) 你必須要對熟悉 [main process vs. renderer process](../tutorial/quick-start.md#the-main-process) 的觀念,才能去使用這些模組。
|
|
|
|
|
|
|
|
|
|
主行程 (main process) 腳本是一個像一般 Node.js 的腳本:
|
|
|
|
|
|
|
|
|
|
```javascript
|
2016-10-03 03:47:16 +00:00
|
|
|
|
var app = require('app')
|
|
|
|
|
var BrowserWindow = require('browser-window')
|
2015-09-08 07:47:29 +00:00
|
|
|
|
|
2016-10-03 03:47:16 +00:00
|
|
|
|
var window = null
|
2015-09-08 07:47:29 +00:00
|
|
|
|
|
2016-10-03 03:47:16 +00:00
|
|
|
|
app.on('ready', function () {
|
|
|
|
|
window = new BrowserWindow({width: 800, height: 600})
|
|
|
|
|
window.loadURL('https://github.com')
|
|
|
|
|
})
|
2015-09-08 07:47:29 +00:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
渲染行程 (renderer process) 跟一般正常的網頁沒有差別,而且還能有使用 node 模組的能力:
|
|
|
|
|
|
|
|
|
|
```html
|
|
|
|
|
<!DOCTYPE html>
|
|
|
|
|
<html>
|
|
|
|
|
<body>
|
|
|
|
|
<script>
|
|
|
|
|
var remote = require('remote');
|
|
|
|
|
console.log(remote.require('app').getVersion());
|
|
|
|
|
</script>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
執行你的應用程式,請閱讀[Run your app](../tutorial/quick-start.md#run-your-app).
|