uniapp + electron 打包项目

news2024/10/6 8:23:54

参考文献

1、控制台安装electron和electron打包工具electron-packager

npm install electron -g
npm install electron-packager -g

2、manifest.json修改

在这里插入图片描述运行的基础路径修改为:./ 不然打包出来会出现白屏,读取不到,因为打包出来的h5默认加载地址为/static/
去掉启用https协议: 不然会出现网络无法加载,去掉https不影响你请求后端的https协议。(这个可加可不加,主要是看后台有没有配置白名单这种的,影响不大)

3.h5正常打包,打包后再h5文件夹下新建 package.json和main.js文件

main.js也可以改成其他的js名称,但是package.json里面的 {main:其他.js}记得改
在这里插入图片描述
注意: build 文件 的根目录要注意,如果项目没打包过app端,则会再最外层App.vue同级生成/dist/build/h5 文件,如果之前有打包过app端的,则是多一层 unpackage/dist/build/h5

package.json 内容

我的应用—》对应之前设置的web配置的页面标题,我的是 judarhr_content_distribution

{
	"name":"我的应用",
	"version":"2.0",
	"main":"main.js",
	"scripts":{
		"test":"echo \"Error: no test specified\" && exit 1",
		"electron":"electron .",
		"start":"electron .",
		"build":"electron-packager ./ 我的应用 --plantform=win32 --arch=x64 --out 我的应用 --overwrite --icon=xdt.ico"
	},
	"author":"",
	"license":"ISC",
	"devDependencies":{
		"electron":"^23.3.13",
		"electron-packager":"^12.2.0"
	}
}

main.js

const {app, BrowserWindow} = require('electron')
const path = require('path')
const url = require('url')

let win
 
function createWindow () {
  win = new BrowserWindow({
	  width: 700, 
	  height: 400,
	  icon:'./static/logo.png', //
	  autoHideMenuBar:true,//隐藏菜单栏
	})
 //加载本地文件 index.html
  win.loadURL(url.format({
    pathname: path.join(__dirname, 'index.html'),
    protocol: 'file:',
    slashes: true
  }))
 //打开控制器
 win.webContents.openDevTools();

  //点击关闭的时候, win 一定要释放掉
  win.on('closed', () => {
    win = null
  })
}
//加载窗体
app.on('ready', createWindow)
 
 //IOS 关闭页面(ios比较特殊win.on('closed')只是关闭显示窗口,但是后台还是会存在,更像是隐藏窗体,所以需要这种判断方式推出)
app.on('window-all-closed', () => {
  if (process.platform !== 'darwin') {
    app.quit()
  }
})
 
app.on('activate', () => {
  
  if (win === null) {
    createWindow()
  }
})

如果你的网页首页的文件名不是 “index.html”,那么请在 main.js 中将其中的 ‘index.html’ 修改为你的网页首页名。

4、打包

\dist\build\h5文件夹处执行打包命令

npm run build

5、运行

npm run start

关闭窗口则整个electron 关闭,得重新运行

6、进入调试模式

第一种:ctrl+shift+i
第二种:main.js配置 win.webContents.openDevTools();

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1271141.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

强大的Kubernetes工具的完整指南

在容器化应用程序编排方面,Kubernetes是市场的领导者。它允许用户在多主机环境中管理容器,提供工作负载分配和网络处理。 此外,它还提供了许多在DevOps过程中至关重要的特性,例如自动扩展、自动修复和负载平衡。这些功能解释了Kub…

xcconfig(环境变量) 的使用

xcconfig(环境变量) 的使用 文章目录 xcconfig(环境变量) 的使用一、上手使用1、添加 xcconfig 文件2、在文件中添加数据3、将文件配置到工程中4、使用环境变量5、使用 Pod 的项目 二、语法1、注释:2、包含语句&#x…

C语言之“可变参数<stdarg.h>”

目录 前言 stdarg.h头文件 实例:遍历并求和所有传递给sum函数的额外实际参数 前言 有时我们会希望函数带有可变数量的参数就像printf(cosnt char* format ...)和scanf(cosnt char* format ...)那样除了有一个参数 …

ArkTS-文本滑动选择器弹窗

文本滑动选择器弹窗 根据指定的选择范围创建文本选择器,展示在弹窗上。 示例 Entry Component struct TextPickerDialogExample {State select: number 2private fruits: string[] [苹果, 香蕉, 橘子, 梨儿, 桃儿]build() {Row() {Column() {Text(当前选择为&…

windows系统bat脚本命令总结之reg命令

前言 做了一段时间的bat脚本开发,bat脚本中有各种各样的命令跟传统的编程逻辑完全不同,本专栏会讲解下各种各式的命令使用方法。 本篇文章讲解的是windows系统注册表操作命令"reg"。 reg命令简介 “reg” 是 Windows 操作系统中的一个命令行工…

关于前端学习的思考-浮动元素和块级元素的关系

先摆关系:浮动元素嵌套块级元素,浮动元素和块级元素是上下关系。 1、浮动元素为父盒子,块级元素为子盒子。 父盒子为浮动元素,子盒子不会继承。如图floatnone; 摆结论:子盒子为行内元素,行内块…

智能优化算法应用:基于群居蜘蛛算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于群居蜘蛛算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于群居蜘蛛算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.群居蜘蛛算法4.实验参数设定5.算法结果6.参考…

excel 计算断面水质等级

在工作中遇到根据水质监测结果要判断断面等级。写了下面的公式: 因子标准值 limits {COD: [15,15, 20, 15,20],氨氮: [0.15, 0.5, 1, 1.5, 2.0],总磷: [0.02, 0.1, 0.2, 0.3, 0.4] } excel公式: IFS(MAX(IF(M2>20,1,0), IF(N2>2,1,0), IF(O2&g…

夜莺项目发布 v6.4.0 版本,新增全局宏变量功能

大家好,夜莺项目发布 v6.4.0 版本,新增全局宏变量功能,本文为大家简要介绍一下相关更新内容。 全局宏变量功能 像 SMTP 的配置中密码类型的信息,之前都是以明文的方式在页面展示,夜莺支持全局宏变量之后,可…

SpringMvc集成开源流量监控、限流、熔断降级、负载保护组件Sentinel | 京东云技术团队

前言:作者查阅了Sentinel官网、51CTO、CSDN、码农家园、博客园等很多技术文章都没有很准确的springmvc集成Sentinel的示例,因此整理了本文,主要介绍SpringMvc集成Sentinel SpringMvc集成Sentinel 一、Sentinel 介绍 随着微服务的流行&…

SpringBoot Bean解析

Bean解析 IOC介绍 松耦合灵活性可维护 注解方式配置Bean 实现方式1: Component声明,直接类上进行添加注解, 同时保证包扫描能扫到即可实现方式2: 配置类中使用Bean Configuration public class BeanConfiguration implements SuperConfiguration{Bean("dog")Ani…

【开源】基于JAVA的大学计算机课程管理平台

项目编号: S 028 ,文末获取源码。 \color{red}{项目编号:S028,文末获取源码。} 项目编号:S028,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 实验课程档案模块2.2 实验资源模块2…

AtCoder Beginner Contest 330 A~F

A.Counting Passes(暴力) 题意&#xff1a; 给定 n n n个学生的分数&#xff0c;以及及格分 x x x &#xff0c;问多少人及格了。 分析&#xff1a; 暴力枚举&#xff0c;依次判断每个学生的分数即可。 代码&#xff1a; #include <bits/stdc.h> using namespace s…

Stability AI 新发布SDXL Turbo:一款实时文本到图像生成模型

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

Word异常退出文档找回怎么操作?4个正确恢复方法!

“刚刚我在用word编辑文档&#xff0c;但是突然word就显示异常了&#xff0c;然后莫名其妙就自动退出了&#xff0c;这可怎么办&#xff1f;我还有机会找回这些文档吗&#xff1f;” 当我们在使用Microsoft Word时&#xff0c;突然遭遇到程序异常退出的情况&#xff0c;可能会让…

四个方法,设置excel文件只读模式

由于excel文件经常用于数据文件&#xff0c;数据就需要特别保护&#xff0c;大家可能需要将文件设置为只读模式来保护数据不被修改&#xff0c;Excel文件想要设置为只读的方法有很多&#xff0c;今天分享四种方法给大家&#xff1a; 方法一&#xff1a;文件属性 右键点击文件…

面试篇之微服务(一)

目录 概览 1.什么是微服务&#xff1f; 2.微服务带来了哪些挑战&#xff1f; 3.现在有哪些流行的微服务解决方案&#xff1f; 这三种方案有什么区别吗&#xff1f; 4.说下微服务有哪些组件&#xff1f; 注册中心 5.注册中心是用来干什么的&#xff1f; 6.SpringCloud可…

Android Studio Giraffe-2022.3.1-Patch-3安装注意事项

准备工作&#xff1a; android studio下载地址&#xff1a;https://developer.android.google.cn/studio/releases?hlzh-cn gradle下载地址&#xff1a;https://services.gradle.org/distributions/ 比较稳定的网络环境&#xff08;比较android studio相关的依赖需要从谷歌那边…

spring cloud Eureka注册中心和Nacos注册中心

文章目录 Eureka注册中心.Eureka的结构和作用搭建eureka-server创建 服务引入eureka依赖编写启动类编写配置文件启动服务 服务注册1&#xff09;引入依赖2&#xff09;配置文件3&#xff09;启动多个user-service实例 服务发现1&#xff09;引入依赖2&#xff09;配置文件3&…

日本MF备案注册数据库-在线免费查询

在日本&#xff0c;药物主文件&#xff08;DMF&#xff09;称为“主文件”或“MF”。 药物主文件&#xff08;DMF&#xff09;系统允许活性药物成分&#xff08;API&#xff09;的制造商向日本审查机构&#xff08;PMDA&#xff09;提交API的详细信息&#xff08;制造方法、数…