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 小时前
【Vue3】大屏性能优化黑科技:Vue 3 中实现请求合并,让你的大屏飞起来!
前端·vue.js
saberxyL4 小时前
通过<RouterView/>来切换页面组件时,transition如何生效?
vue.js
jason_yang5 小时前
vue3中createApp多个实例共享状态
javascript·vue.js
老华带你飞5 小时前
海产品销售系统|海鲜商城购物|基于SprinBoot+vue的海鲜商城系统(源码+数据库+文档)
java·前端·数据库·vue.js·论文·毕设·海鲜商城购物系统
7***A4437 小时前
Vue自然语言处理应用
前端·vue.js·自然语言处理
徐小夕7 小时前
耗时一周,我把可视化+零代码+AI融入到了CRM系统,使用体验超酷!
javascript·vue.js·github
明教教主张5G7 小时前
Vue响应式原理(13)-ref实现原理解析
前端·vue.js
kungggyoyoyo8 小时前
TRAE中国版SOLO模式上线!我用它从0到1开发了一款AI小说编辑器
前端·vue.js·trae
什么时候吃饭8 小时前
vue2、vue3父子组件嵌套生命周期执行顺序
前端·vue.js
低保和光头哪个先来9 小时前
场景2:Vue Router 中 query 与 params 的区别
前端·javascript·vue.js·前端框架