angular-electron 将打包后的.exe程序从“一键安装”改为“辅助安装”

叶书
2023-12-01

angular-electron的打包后的exe程序 从一键安装程序 改为 辅助安装程序

我用的 angular-electron 版本 10.1.0

前言:

  • 我搞这个的时候,也搞了很长时间,而搞很长和时间的原因,是因为,我搜索出来的关于改变这个安装程序的配置都是要写在package.json里。。。。
  • 说实话,当时我就信了他们的话,但是我忽略了一点,我用的是 angular-electron,人家带的有自己的 electron-build.json文件。。。。
  • 我里个大尴尬,浪费我两个小时的时间。。。。

话不多说,我们直接开始,其实贼简单:

名词解析:

  • 一键安装程序:指angular-electron打包后生成的exe应用程序,双击后自动安装并打开。
  • 辅助安装程序:指angular-electron打包后生成的 exe 应用程序,双击后展示安装流程,可供用户自己配置。【如安装路径,所属用户 等】

一键安装程序:

angular-electron默认配置为一键安装程序:【详情见:electron-build.json

{
  ....
  
  "win": {
    "icon": "dist/assets/icons",
    "target": [
      "portable"
    ]
  },
  
  ....
}
  • 上面的这个地方"target": [ "portable" ]指的 在 window 下的构建目标为 protable 即 一键安装程序。

辅助安装程序

辅助安装程序,则需要修改 angular-electron的默认的electron-build.json配置

{
  .....
    
  "nsis": {
    "oneClick": false,
    "allowToChangeInstallationDirectory": true
  },
  "win": {
    "icon": "dist/assets/icons",
    "target": [
      "nsis"
    ]
  }
    
  .....
  
}
  • 首先把 windiws 下载的 target 修改成 nsis,表示最终的构建目标为一个构建工具

  • 然后在增加一个 nsis 配置: oneClick:false,表示不要一键安装。还可以增加其他配置,比如:allowToChangeInstallationDirectory: true就是表示用户可以自定义安装路径。

    nsis配置详情传送门

从 一键安装程序 改为 辅助安装程序 有什么好处呢?
比如:

  • 我们有个需求是 要根据用户电脑上程序的运行路径,自动在该路径目录下创建一个文件夹来存放东西。
  • 那么此时,如果我们是一键安装程序,我们就只能获取程序运行的绝对路径,然后来创建这个文件夹,这样其实并不好。
  • 如果是 辅助安装程序,我们则不用获取程序运行的绝对路径什么的,我们可以直接写一个 相对路径 即可,并且,辅助安装程序可以设置帮助用户创建桌面快捷方式,选择安装目录等,更加符合用户的习惯。
 类似资料: