欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

vue项目打包为桌面应用程序

程序员文章站 2022-05-28 09:05:05
...

1、通过Vue-cli创建vue 项目

 vue create electron-vue-start

2、Vue项目下,命令行执行

vue add electron-builder

注意:执行过程中可能会出现错误,如果出现错误,他会提示哪条命令没有执行成功,推荐用cnpm(淘宝镜像)执行那条失败的命令

3、执行命令查看是否能运行项目

npm run electron:serve 

4、在项目根目录下添加vue.config.js配置文件,打包配置如下

module.exports = {
  //打包为应用程序配置
  pluginOptions: {
    // vue-cli-plugin-electron-builder 配置
    electronBuilder: {
      builderOptions: {
        // 设置打包之后的应用名称
        productName: 'HuaXin_Mall',
        win: {
          icon: 'public/huaxin.ico',
          // 图标路径 windows系统中icon需要256*256的ico格式图片,更换应用图标亦在此处
          target: [{
            // 打包成一个独立的 exe 安装程序
            target: 'nsis',
            // 这个意思是打出来32 bit + 64 bit的包,但是要注意:这样打包出来的安装包体积比较大
            arch: [
              'x64'
              // 'ia32'
            ]
          }]
        },
        dmg: {
          contents: [
            {
              x: 410,
              y: 150,
              type: 'link',
              path: '/Applications'
            },
            {
              x: 130,
              y: 150,
              type: 'file'
            }
          ]
        },
        linux: {
          // 设置linux的图标
          icon: 'public/huaxin.ico',
          target: 'AppImage'
        },
        mac: {
          icon: 'public/huaxin.ico'
        },
        files: ['**/*'],
        extraResources: {
          // 拷贝dll等静态文件到指定位置,否则打包之后回出现找不大dll的问题
          from: 'resources/',
          to: './'
        },
        asar: false,
        nsis: {
          // 是否一键安装,建议为 false,可以让用户点击下一步、下一步、下一步的形式安装程序,如果为true,当用户双击构建好的程序,自动安装程序并打开,即:一键安装(one-click installer)
          oneClick: false,
          // 允许请求提升。 如果为false,则用户必须使用提升的权限重新启动安装程序。
          allowElevation: true,
          // 允许修改安装目录,建议为 true,是否允许用户改变安装目录,默认是不允许
          allowToChangeInstallationDirectory: true,
          // 安装图标
          installerIcon: 'public/huaxin.ico',
          // 卸载图标
          uninstallerIcon: 'public/huaxin.ico',
          // 安装时头部图标
          installerHeaderIcon: 'public/huaxin.ico',
          // 创建桌面图标
          createDesktopShortcut: true,
          // 创建开始菜单图标
          createStartMenuShortcut: true
        }
      },
      chainWebpackMainProcess: config => {
        config.plugin('define').tap(args => {
          args[0].IS_ELECTRON = true
          return args
        })
      },
      chainWebpackRendererProcess: config => {
        config.plugin('define').tap(args => {
          args[0].IS_ELECTRON = true
          return args
        })
      }
    }
  }
};

5、执行打包命令

npm run electron:build

6、执行成功后目录如下(打包过程中出现错误,可再执行一遍)
vue项目打包为桌面应用程序
7、也可以自行编写Electron的功能,主进程文件在src下的background.js
vue项目打包为桌面应用程序
8、如果想让打包的应用程序不显示菜单栏
(1)引入Menu模块
vue项目打包为桌面应用程序
(2)在createWindow方法里
vue项目打包为桌面应用程序
9、打包成功后应用程序示例
vue项目打包为桌面应用程序