win10下解决nw.js打包后启动贼慢的问题

在win10下,关于nw.js打包的问题找了好多资料,大多的方法如下:

app文件:存放项目代码的文件夹

1. 将app文件夹内的所有文件打包成app.zip压缩包(这个压缩包一定要包含package.json)

2. 将app.zip的后缀名改为nw,即app.nw(也可以不用改)

3. 将app.nw拷贝到nw.exe同目录下

4. 命令行进入根目录: copy /b nw.exe+app.nw app.exe

5.运行完以上代码后,就会生成一个名为app.exe的可执行文件,双击即可运行

上面的这种方法虽然可行,但运行文件特别慢,本人等待了8秒多才成功显示界面。

一般用户的极限忍耐时间为6~8秒,所以启动慢的问题对用户体验非常不好。

所以我又想,弄个启动页,双击exe直接显示启动页,等主界面加载完后再显示,google一查,果不其然,那就是设置一个splash_screen.html,来充当启动页,思路如下:

1. 运行exe,加载 splash_screen.html,显示启动页

2. 在启动页中,利用gui.Window.open("main_path")的方法打开主界面

具体代码如下:

win10下解决nw.js打包后启动贼慢的问题_第1张图片

运行之后发现,仍然需要8秒多才能启动项目,google后,理解启动慢是因为要解析压缩包,然后再分析package.json,找到对应的启动路径,其中解析压缩包花了很长的时间。打开主界面是一瞬间的事,很快。

最后仔细阅读了官方文档,发现nw.js打包有两种方法,如下:

win10下解决nw.js打包后启动贼慢的问题_第2张图片

我所使用的恰恰是第二种并不推荐的打包方法,官网的第一种方法更好,更快捷,思路如下。

核心思路是:根本不需要打包

1. 将项目的package.json文件拷贝到与nw.exe同目录下

2. 改一下package.json中的mian/node-mian路径

3. 直接双击nw.exe就能运行程序

* 速度特别快,导致设计师给我设计的启动页只闪了一下,就关闭了,所以我有加了个定时器,等个2秒再打开主界面^_^,也对得起设计师的努力了

参考链接:

docs.nwjs.io/en/latest/For%20Users/Package%20and%20Distribute/#package-option-1-plain-files-recommended

github.com/nwjs/nw.js/issues/5324

你可能感兴趣的:(win10下解决nw.js打包后启动贼慢的问题)