打包网页的一次尝试

news/2024/10/2 22:16:37

1. 下载Node.js

更换cnpm:npm install -g cnpm --registry=https://registry.npmmirror.com
C:\Users\Administrator\.npmrc中添加源

registry=https://registry.npmmirror.com
disturl=https://registry.npmmirror.com/-/binary/node
electron_mirror=https://cdn.npmmirror.com/binaries/electron/
electron_builder_binaries_mirror=https://npmmirror.com/mirrors/electron-builder-binaries/

2. 下载electron

cnpm install electron -g

3. 下载electron-builder

cnpm install electron-builder -g

4. 编辑文件

创建文件夹并进入,然后别编写以下文件package.json,main.js

package.json
{"name": "envProtection","version": "1.0.0","description": "环保智慧化管理系统","main": "main.js","scripts": {"test": "echo \"Error: no test specified\" && exit 1","start": "electron .","pack": "electron-builder"},"author": "jmld","license": "ISC","devDependencies": {"electron": "^32.1.2","electron-builder": "^23.3.3"},"build": {"appId": "com.example.envProtection","productName": "环保智慧化管理系统","directories": {"output": "dist"},"files": ["!node_modules","!dist","!build"],"win": {"target": "nsis","icon": "envprotection.ico"},"nsis": {"oneClick": false,"allowElevation": true,"allowToChangeInstallationDirectory": true,"createDesktopShortcut": true,"createStartMenuShortcut": true},"electronDownload": {"mirror": "https://npm.taobao.org/mirrors/electron/"}}
}


main.js
const electron = require('electron');
const Menu = electron.Menu
// 控制应用生命周期的模块
const {app} = electron;
// 创建本地浏览器窗口的模块
const {BrowserWindow} = electron;// 指向窗口对象的一个全局引用,如果没有这个引用,那么当该javascript对象被垃圾回收的
// 时候该窗口将会自动关闭
let win;function createWindow() {// 隐藏菜单栏//Menu.setApplicationMenu(null);// 创建一个新的浏览器窗口win = new BrowserWindow({width: 1366, height: 768, show: false});win.setAutoHideMenuBar(true);// 并且装载应用的index.html页面win.loadURL(`http://www.kmhzhxt.com/`);// 打开开发工具页面//win.webContents.openDevTools();// 当窗口关闭时调用的方法win.on('closed', () => {// 解除窗口对象的引用,通常而言如果应用支持多个窗口的话,你会在一个数组里// 存放窗口对象,在窗口关闭的时候应当删除相应的元素。win = null;});// 加载完成后弹出登录框win.once('ready-to-show', () => {win.setTitle("环保智慧化管理系统");win.show();});
}// 当Electron完成初始化并且已经创建了浏览器窗口,则该方法将会被调用。
// 有些API只能在该事件发生后才能被使用。
app.on('ready', createWindow);
/* var mainWindow = new BrowserWindow({webPreferences: {nodeIntegration: false}
}); */
// 当所有的窗口被关闭后退出应用
app.on('window-all-closed', () => {// 对于OS X系统,应用和相应的菜单栏会一直激活直到用户通过Cmd + Q显式退出if (process.platform !== 'darwin') {app.quit();}
});app.on('activate', () => {// 对于OS X系统,当dock图标被点击后会重新创建一个app窗口,并且不会有其他// 窗口打开if (win === null) {createWindow();}
});// 在这个文件后面你可以直接包含你应用特定的由主进程运行的代码。
// 也可以把这些代码放在另一个文件中然后在这里导入。



5. 打包

在上一步自建目录下配置依赖:cnpm install electron -D
全局安装打包工具:cnpm install electron-builder --save-dev -g
打包:cnpm run pack

最后在自建目录下dist下就可以看见打包好的.exe文件了




参考链接:
记一次使用 Electron 打包在线网页











下载链接:
Node.js官方
Electron主页
electron官方镜像
electron官方Demo

参考链接:
npmmirror 镜像站
https://blog.csdn.net/h__913246828/article/details/136362415
electron和node.js的版本兼容情况:https://www.npmjs.com/package/electron-releases

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

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

相关文章

29. GIL全局解释器锁、信号量、线程池进程池

1. GIL全局解释器锁1.1 概念 In CPython, the global interpreter lock, or GIL, is a mutex that prevents multiplenative threads from executing Python bytecodes at once. This lock is necessary mainly because CPython’s memory management is not thread-safe. (How…

[操作系统]进程同步

临界区 互斥量 信号量 事件

05-论说文:审题与立意(2)

争论性材料 描述性材料 审题最难的 有个三段论!! 人工智能的作用 有好有坏 技术变革是中项 三段论 、 这怎么写? 经济联考: 蚂蚁 ==》资源 可持续发展 题干明确 ==》给啥说啥 题干不明确,典故、实验、自然现象==》社会、企业管理 见人…

本文来自博客园,作者:雨中秋,转载请注明原文链接:https://www.cnblogs.com/zengzi/p/18445105,不然会AFO

navicat

一、概述 在现代软件开发和数据管理中,数据库的管理与维护至关重要。无论您是一个开发者、数据分析师,还是数据库管理员,使用一款强大的数据库管理工具能大大提高工作效率。Navicat 就是这样一款备受欢迎的数据库管理工具,支持多种数据库系统,如 MySQL、PostgreSQL、SQLit…

记一次虚拟机无法 ping 通百度的解决方法

先运行ip a查看网卡: 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 sc…

Apache POI 创建 Excel

数据来自 通义千问🎈依赖包 <dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>5.2.2</version> </dependency> v5.2.2。创建Excel xlsx 格式。简单版 创建一个包含数据的 Excel 文…