NW.js

NW.js(以前称为node-webkit)允许您直接从DOM调用所有Node.js模块,并启用一种使用所有Web技术编写应用程序的新方法。
nw.js是intel支持的一个基于nodeJs和chromium的应用程序运行环境,还有一个是github支持的Electron,这个相对于nw比较火(ps:关于二者的关系更多参考nw.js & Electron),在这里用的是nw.js,也就是说经过它的打包虽然看起来是一个电脑应用程序,但他实质上相当于一个UI浏览器,只不过是以一个轻量的应用程序呈现出来,因此完全支持浏览器的所有功能(ps:顿时感觉现在的JavaScript脚本语言还是很牛X的,能写各种项目以及产品,满足你一切的欲望);它支持nodeJs中所有的API和第三方模块;同时也支持本地的接口;可以直接从DOM和Web Workers调用Node.js模块;适用于Linux,Mac OS X和Windows。以上就是它的特点也是我们做产品或者项目用它的理由。
如何打包桌面应用程序?
首先进入nw.js的官网,下载SDK版本并解压,在nw.exe的根目录下创建/引入我们的项目,在这里我以我的sina为例子(ps:当然用自己的或者重新建一个都阔以)
NW.js
文章图片
NW.js
文章图片
NW.js
文章图片
在项目文件夹里需要写一个项目入口package.json,nw.js入口文件类型可以是html也可以是JavaScript,我用的是html(ps:新建的项目就新建一个文件把代码放进去,在建一个html和JavaScript文件,写两行代码测试一下)
package.json文件:
{"main":"src/index.html",// 入口文件路径"name":"sina"// 项目名}
接下来就可以运行了,运行方式有两种(ps:不过程序员喜欢装逼都爱用第一种<( ̄︶ ̄)/)
在nw.exe的根目录下按住shift+鼠标右键,点击菜单中的“在此处打开命令窗口(W)”,输入nw 你的项目名,这里是nw sina,(ps:nw命令就是用来运行nw打包的程序)回车之后等一下会出现一个窗口,这个窗口就是你的应用程序了,这个应用程序就是我刚才提到的UI浏览器,在这里不但可以调用本地和node接口,还能使用chrome的一切功能,非常完美
直接将你的项目拖拽到nw.exe上
NW.js
文章图片
将项目文件夹里面的所有文件压缩成zip,并将扩展名改成nw(ps:压缩工具用WinRAR的话会出错,我用的7-zip,这里并不是说WinRAR不好用,这两者各有千秋,WinRAR压缩快,但质量上不如7-zip高,压缩的文件也比7-zip的大,而且7-zip解压的速度是特别快的,可能因为这个原因导致的失败吧)
NW.js
文章图片
再将刚才的nw文件剪切到nw.exe根目录下,并且执行命令:copy /B nw.exe+sina.nw sina.exe
NW.js
文章图片
细心的人会发现这个地方多了一个sina.exe,没错,这就是我们的应用程序了,但是把它从这个文件夹中拿出来就不好使了,这其实是没有得到程序许可的缘故,所以我们还需要一个可以让它执行的东西:Enigma Virtual Box
NW.js
文章图片
下载并安装上,运行enigmavb.exe,将我们打包好的程序文件放进去,然后将locales和pnacl这两个文件夹拖进去,再add Files,这个时候只添加文件,不包括文件夹和我们自己创建的文件,然后点击process,大功告成!!!
NW.js
文章图片


【NW.js】原文链接:https://www.jianshu.com/p/4ef35c300596

    推荐阅读