vue打包exe之electron-quick-start的npm install 报错

vue打包exe之electron-quick-start的npm install 报错

1、github地址

bash 复制代码
https://github.com/electron/electron-quick-start

2、问题

我使用的pnpm install正常安装,执行npm start提示错误

3、解决

package.json文件中加入

bash 复制代码
  "scripts": {
    "postinstall": "node node_modules/electron/install.js"
  },
  "config": {
    "electron": {
      "mirror": "https://registry.npmmirror.com/-/binary/electron/"
    }
  }

示例:

bash 复制代码
{
  "name": "electron-quick-start",
  "version": "1.0.0",
  "description": "A minimal Electron application",
  "main": "main.js",
  "scripts": {
	"start": "electron .",
    "postinstall": "node node_modules/electron/install.js"
  },
  "repository": "https://github.com/electron/electron-quick-start",
  "keywords": [
    "Electron",
    "quick",
    "start",
    "tutorial",
    "demo"
  ],
  "author": "GitHub",
  "license": "CC0-1.0",
  "devDependencies": {
    "electron": "^32.1.2"
  },
  "config": {
    "electron": {
      "mirror": "https://registry.npmmirror.com/-/binary/electron/"
    }
  }

}

4、其他(打包exe)

安裝打包插件:npm i electron-packager --save-dev

package.jsonscripts标签添加

bash 复制代码
"packager": "electron-packager ./ hello --out=release --platform=win32  --arch=x64 --overwrite --download.mirrorOptions.mirror=https://npm.taobao.org/mirrors/electron/  --ignore=node_modules"

参数解释:

命令解释如下:

  • ./ 表示项目目录是当前目录

  • hello 表示生成exe的名称

  • --platform=win32 表示运行时是windows

  • --out=release 表示生成目录是当前目录下的release 目录

  • --arch=x64 表示是64位平台

  • --overwrite 表示新生成的覆盖老的

  • --download... 表示依赖包采用国内的加速网络下载

  • --ignore 表示忽略node_modules的部分包版本,用来解决报错: This normally means that either you have deleted this package already somehow (check your

    ignore settings if using electron-packager). Or your module

    installation failed.

示例:

bash 复制代码
{
  "name": "electron-quick-start",
  "version": "1.0.0",
  "description": "A minimal Electron application",
  "main": "main.js",
  "scripts": {
    "start": "electron .",
    "postinstall": "node node_modules/electron/install.js",
    "packager": "electron-packager ./ hello --out=release --platform=win32  --arch=x64 --overwrite --download.mirrorOptions.mirror=https://npm.taobao.org/mirrors/electron/  --ignore=node_modules"
  },
  "repository": "https://github.com/electron/electron-quick-start",
  "keywords": [
    "Electron",
    "quick",
    "start",
    "tutorial",
    "demo"
  ],
  "author": "GitHub",
  "license": "CC0-1.0",
  "devDependencies": {
    "electron": "^32.1.2",
    "electron-packager": "^17.1.2"
  },
  "config": {
    "electron": {
      "mirror": "https://registry.npmmirror.com/-/binary/electron/"
    }
  }
}

修改完配置,执行命令:

bash 复制代码
npm run packager

参考

https://juejin.cn/post/7084628134309396494

https://blog.csdn.net/dong_beijing/article/details/130461361

https://www.jb51.net/javascript/3178779pj.htm

https://www.jb51.net/javascript/3077301ir.htm

相关推荐
来自星星的坤4 小时前
Vue 3中如何封装API请求:提升开发效率的最佳实践
前端·javascript·vue.js
程序猿熊跃晖6 小时前
Vue中如何优雅地处理 `<el-dialog>` 的关闭事件
前端·javascript·vue.js
前端开心果7 小时前
vue实现静默打印pdf
前端·vue.js·pdf
OpenTiny社区8 小时前
TinyVue v3.22.0 正式发布:深色模式上线!集成 UnoCSS 图标库!TypeScript 类型支持全面升级!
前端·vue.js·开源
工业互联网专业10 小时前
基于JavaWeb的花店销售系统设计与实现
java·vue.js·spring boot·毕业设计·源码·课程设计·花店销售系统
会飞的鱼先生10 小时前
vue3中slot(插槽)的详细使用
前端·javascript·vue.js
lyq31511 小时前
vue3+ts + vite 封装组件发布npm包
npm
cg501711 小时前
Vue 的数据代理机制
前端·javascript·vue.js
zooooooooy11 小时前
Electron打包ARM环境deb包
后端·electron
编程老菜鸡11 小时前
Vue3-原始值的响应式方案ref
前端·javascript·vue.js