解决用electron打包Vue工程(Vite)报错electron : Failed to load URL : xxx... with error : ERR _CONNECTION_REFUSED

解决用electron打包Vue工程(Vite)报错electron : Failed to load URL : xxx... with error : ERR _CONNECTION_REFUSED

Background: 生产环境通过 Electron 直接加载本地文件系统中的静态资源

注:node后的状态码不重要

明明前端工程可以运行,后端连接也没问题,为什么打包完成后总是连不上网址?

网上常规的排错思路:

• 目标服务未运行

• 端口号配置错误

• 防火墙/安全组拦截

• 跨域策略限制

于是你耗费精力一步步来,到头发现还是没有页面,连接错误
可是你忽略了一个必要的前提:
生产环境引用的是经过 Vite 构建、压缩、哈希命名后的文件
构建后的静态资源(如.html)包含指向编译后 JavaScript 文件的引用
你想起来在打包过程中或多或少的修改或新增了一些文件,使之看似符合应有的结构
但即便自己写的代码和网上build后的长相完全一致,打包后也无法被正确引用,因为不是编译过的代码

那如何预先编译一遍所有必要的组件呢?答案很简单,使用npm命令编译一遍:

Terminal: npm run build # 实际执行的是package.json里的scripts.build

复制代码
"name": "DXY 1st",
    "version": "5.3.0",
    "private": true,
    "description": "DXY 666",
    "author": "duandashuaige",
 
 
"scripts": {
 
  "build": "vite build"  //在你package.json中增加scripts参数
 
}

3.打包后会得到根目录下的dist文件夹,dist文件夹里的内容才是打包后机器可以直接引用的文件,里面有:

Assets文件夹,用来存放静态资源(js/CSS/img)
index.html,关键的入口文件,记得把路径改成引用dist里的资源

......

注意事项:build过程中对源文件已有的报错比较严格,如果没有修好某些小报错,build会失败:

修好小bug之后就可以美美build咯:

相关推荐
三十而立洋6 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
大蓝头6 天前
安装包UI美化之路-nsNiuniuSkin全新UI调试与预览方法
ui·electron·安装包·截图控件·截屏控件
卡布鲁6 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
李少兄6 天前
JavaScript 隐式全局变量解析
javascript
沙蒿同学6 天前
我用 Go 搭了一条 AI Agent 流水线:从 1 张商品图到一整套淘宝详情页
前端·javascript·后端
paopaokaka_luck6 天前
智慧社区综合服务小程序(人脸识别、AI问答、Echarts图形化分析)
前端·javascript·spring boot·spring·数据分析·echarts
Hilaku6 天前
为什么死磕 1px 的团队,用户体验反而更差?
前端·javascript·程序员
陈拉斯6 天前
给公司年会写了个大屏抽奖系统:动画在前端跑,凭什么说结果没被改?
javascript
志尊宝6 天前
Vue3 零基础每日笔记(055):组件里正确使用 store——storeToRefs 解构与 $patch 批量修改
笔记·vue·html·前端开发·软件开发
yzy856 天前
Vue中下载或打开文件的JavaScript方法
前端·javascript·vue