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

相关推荐
博客zhu虎康3 小时前
Element中 el-tree 如何隐藏 Tree 组件中的父节点 Checkbox
javascript·vue.js·elementui
长明3 小时前
Electron 的西天取经
vue.js·electron
九十一3 小时前
Reflect 在 Vue3 响应式中作用
前端·vue.js
岁月宁静3 小时前
前端添加防删除水印技术实现:从需求拆解到功能封装
前端·vue.js·人工智能
FreeBuf_3 小时前
攻击者利用Discord Webhook通过npm、PyPI和Ruby软件包构建隐蔽C2通道
前端·npm·ruby
华仔啊5 小时前
Vue3 登录页还能这么丝滑?这个 hover 效果太惊艳了
前端·css·vue.js
云和数据.ChenGuang5 小时前
Component template requires a root element, rather than just错误
前端·javascript·vue.js
哲此一生9847 小时前
搭建Vue3工程(去除不必要的文件)
前端·javascript·vue.js
黑云压城After10 小时前
H5使用环信实现视频或语音通话
前端·javascript·vue.js
牧杉-惊蛰13 小时前
disable-devtool 网络安全 禁止打开控制台
前端·css·vue.js