最近小编在查看分享资料时,发现一个可以开发跨平台桌面应用的框架——NW.js(原名:node-webkit)。正当小编兴致勃勃的研究NW.js的时候,最基础的安装环节出了问题。无论用npm还是cnpm都无法完整下载所依赖的包(具体原因待考察)。鉴于此,我只能转向研究另一个同类型的框架——Electron(原名:Atom Shell)。
首先,进入Electron的github官网,上边有详细的文档说明。为了快速搭建应用框架,我们可以选择Electron的
electron-quick-start项目。以下相关操作都在win7的64位操作系统中进行。
打开E盘,新建目录desktop-app-demo,打开gitbash,进入此目录,输入git命令下载electron-quick-start项目代码。

进入目录electron-quick-start,输入命令npm install,安装相关依赖包。

输入命令npm start,运行项目。如果弹出Hello World的窗口,说明项目运行成功。如下图:

现在,我们要将项目代码打包成系统安装软件。这里我们采用一种比较简洁的方式进行打包——使用
electron-builder模块。
输入命令cnpm install electron-builder -g, 全局安装electron-builder模块。安装完成后,输入命令build --help,测试是否安装成功。如下图:

如果出现帮助信息,即为安装成功。
需要在项目文件夹下新建资源文件夹(这里新建名字为res的目录),将程序发布所用的图标等资源统一放进资源文件夹进行管理。(打包windows exe需要ico文件像素为256*256)。如下图:

编辑项目目录里的package.json,添加electron-builder编译所需要的属性,如下图:

配置完成后在项目目录里执行命令build --win --x64。执行命令后即开始打包,无报错后即打包成功。如下图:

打包成功后,会在项目目录里自动生成dist目录,里边存有生成的桌面应用安装包。如下图:

这个安装包可以随意复制、移动、重命名。我们可以把它复制到E盘下,重名为desktop-demo.exe。双击安装运行,如下图:

安装成功后,会自动在桌面生成一个快捷方式,如下图:

如果想卸载此应用,可以直接在软件管理软件中卸载,如下图:

这样,我们通过nodejs制作的基于windows桌面应用demo就完成了。如果想生成其他系统的安装包,只要按照electron-builder的官方文档说明打包即可。
代码地址:
欢迎关注个人公众号,查看更多好文。