node-webkit 就是nodejs 加webkit
核心是nodejs 做本地化調用,webkit來解析和執行html、css 和js
可以從http://nwjs.io/downloads/ 下載包。
github網址https://github.com/nwjs/nw.js
1、配置
下載完後,解壓。目錄下會有一個nw.exe。雙擊運行。
會顯示一個很大的nw.js。
2、hello創建和運行
在nw.js目錄下創建一個hello文件夾。
新建package.json:
{
"name": "hello",
"version": "0.1.0",
"main": "index.html",
"window": {
"toolbar": true,
"width": 800,
"height": 600
},
"node-main":"node-main.js",
"platformOverrides": {
"win": {
"window": {
"frame": true
}
}
}
}
新建index.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Hello World!</title>
</head>
<body onload="process.mainModule.exports.callbackIndex()">
<button onclick="window.reload()">刷新</button>
<h1>Hello World!</h1>
We are using node.js:
<script>document.write(process.version)</script>
</body>
</html>
新建node-main.js:
/*
js內可以訪問window,它指向DOM窗口,但是如果頁面導航發生變化,訪問到的window對象也會發生變化。因爲它執行時間要早於DOM加載,所以要等頁面加載完畢,才能使用“window”對象。
同時,在DOM頁面中,可以通過process.mainModule來獲取node-main信息。
可以綁定在onload=process.mainModule.exports.callback0()
當刷新時值會一直增加,說明context是單獨的。
*/
var i = 0;
exports.callbackIndex = function() {
window.alert("i = " + i);
i += 1;
}
運行方法:
1、把三個文件打包成hello.zip。複製到nw.exe的目錄。拖動zip到nw.exe。即可運行。
2、拖動hello文件夾到nw.exe也可運行。
3、cmd 進入nw.exe 目錄 輸入 nw.exe hello 也可運行。
打包成exe:
1、cmd 進入new.exe 目錄,執行:
copy /b nw.exe+hello.zip hello.exe 生成hello.exe .
copy /b nw.exe+app.nw app.exe
copy /b //使用+把多個文件合併成爲一個
生成的hello.exe只能在當前目錄運行,因爲需要一些xx.dll文件支持。
3、配置path
每個都要進入nwjs-v0.17.1-win-x64 才能運行nw 太麻煩了
可以添加目錄到path 如: F:\work\nwjs\nwjs-v0.17.1-win-x64
這樣任何地方都可以用nw 了。
nw 會運行默認實例。
運行項目 時直接到項目目錄然後nw hello 即可哦