RPA编程实践:Electron实践开始
文章目录
- 前言
- 闲话少叙,打开官网
- 版本发布
- 安装
- 在 Windows 上安装
- 在 macOS 上安装
- 在 Linux (Ubuntu) 上安装
前言
上回说道,我们electron适合于熟悉web开发,但想要研发桌面应用的人。
但我觉得这个需求应该不是很多。
因为使用electron,需要你的每个用户都额外安装一个套壳的浏览器。这个代价并不小。
你现在在看这篇文章,要么是因为你莫名其妙地接收了一个这样的项目;要么是你想做的事儿本身就和浏览器强相关。
比如RPA。
闲话少叙,打开官网
electron官网
electron的官网是个英文网站,支持中文语言,但好像汉化地不彻底。
这就导致了可以通过搜索引擎找到一些1:1复制的纯中文网站。咱自认为英文水平还可以,就看英文了。
版本发布
这个翻译还是很得体的,在右上角,咱点进去
整第一个,试试
Release Notes:发布说明,通常包含新版本中新增的功能、改进和修复的错误等信息。
Stack Upgrades:技术栈升级,指的是整个应用程序依赖的技术组件(如编程语言、框架、库等)的更新。这确保了应用能够利用最新的性能优化、安全补丁和其他改进。
Chromium 132.0.6834.83:提到的是Chromium浏览器的一个具体版本。Chromium是一个开源浏览器项目,Google Chrome和其他一些浏览器都是基于它构建的。这里的版本号表示该浏览器的新版本,可能包含了新的功能、性能改进或者安全更新。
New in 132 和 New in 131:这些是指出在Chromium的第132版和第131版中新增加的内容或特性。
Node 20.18.1:指的是Node.js的一个特定版本。Node.js是一个基于Chrome V8引擎的JavaScript运行时,用于构建快速响应的服务器端应用。版本号20.18.1表明这是一个具体的稳定版本,其中可能包括了错误修复、性能增强或新功能。
Node 20.18.1 blog post:指向一篇博客文章,详细介绍了Node.js版本20.18.1的变化和改进。
V8 13.2:指的是V8 JavaScript引擎的一个版本。V8是实现ECMAScript和WebAssembly的高性能引擎,主要用于Chrome和Node.js。它的更新通常会带来更好的性能、新的JavaScript语言特性支持等。
好像随便打一个指令就可以安装了。
咱来试试。
安装
首先,毕竟这里提到了node版本,所以咱还得把对应版本的node搞定。
要在您的系统上从零开始安装 Node.js 20.18.1,您可以根据您所使用的操作系统选择不同的方法。以下是一些常见操作系统上的安装步骤:
在 Windows 上安装
-
下载安装包:
- 访问 Node.js 官方网站。
- 因为直接获取特定版本如20.18.1可能需要访问node.js 发布页面找到对应版本手动下载,或者使用版本管理工具。
-
安装 Node.js:
- 找到下载的
.msi
文件并双击启动安装向导。 - 按照屏幕上的指示完成安装过程。
- 找到下载的
-
验证安装:
- 打开命令提示符(cmd),输入
node -v
和npm -v
来检查 Node.js 和 npm 的版本号,确保它们已经被正确安装。
- 打开命令提示符(cmd),输入
在 macOS 上安装
-
使用 Homebrew 安装:
- 如果您还没有安装 Homebrew,可以在终端中粘贴以下命令来安装:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- 使用
brew install node@20
命令安装 Node.js 最新20.x版本。注意,如果需要安装特定版本如20.18.1,可以使用 nvm(Node Version Manager)等工具。
- 如果您还没有安装 Homebrew,可以在终端中粘贴以下命令来安装:
-
使用 nvm 安装(推荐用于管理多个 Node.js 版本):
- 安装 nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
- 加载 nvm:
source ~/.nvm/nvm.sh
- 安装指定版本的 Node.js:
nvm install 20.18.1
- 设置该版本为默认:
nvm alias default 20.18.1
- 安装 nvm:
在 Linux (Ubuntu) 上安装
-
使用包管理器安装:
- 更新您的包列表:
sudo apt update
- 安装 Node.js: 注意官方库可能没有最新版本,建议使用节点版本管理器或从节点官网下载二进制文件。
- 更新您的包列表:
-
使用 nvm 安装:
- 跟随上面提到的 macOS nvm 安装步骤。
- 安装完成后,使用
nvm install 20.18.1
安装所需的版本。
我是windows,就是直接下载安装包,进行安装
不错,咱今天先到这儿吧!
相关文章:

RPA编程实践:Electron实践开始
文章目录 前言闲话少叙,打开官网版本发布安装在 Windows 上安装在 macOS 上安装在 Linux (Ubuntu) 上安装 前言 上回说道,我们electron适合于熟悉web开发,但想要研发桌面应用的人。 但我觉得这个需求应该不是很多。 因为使用electron&#…...
ORB-SLAM2源码学习:MapPoint.cc④: 新增地图点总结
前言 让我们来总结ORB-SLAM2 中的新增地图点。 1.在第一阶段跟踪中的恒速模型跟踪中新增地图点 针对双目相机或RGB-D相机,找出上一帧中具有有效深度值且不是地图点的特征点,将其中较近的点作为上一帧新的临时地图点, 并记录在向扯mlpTempo…...

2025西湖论剑-babytrace
前言 就做了下题目,pwn1/3 都是签到,pwn2 后面绕 ptrace 有点意思,简单记录一下 漏洞分析 子进程中的读/写功能没有检查负数的情况,存在越界读写: void __fastcall get_value(__int64 *int64_arr) {__int64 ll; //…...

绘图专用,26个常见流程图符号及其解释
关注作者 当您设计网站、构建应用程序或绘制业务系统时,您需要一种方法来清晰地绘制步骤和用户流程。虽然您可以使用流程图来概述这些过程,但箭头和方框只能帮助您到目前为止。为了清楚地表达您的意思,您需要流程图符号。 为了帮助解释每个流…...
【个人学习记录】软件开发生命周期(SDLC)是什么?
软件开发生命周期(Software Development Life Cycle,SDLC)是一个用于规划、创建、测试和部署信息系统的结构化过程。它包含以下主要阶段: 需求分析(Requirements Analysis) 收集并分析用户需求定义系统目标…...

自学SpringBoot笔记
概念 什么是SpringBoot? Spring Boot 是基于 Spring Framework 的一款开源框架,主要用于简化 Spring 应用程序的开发。它通过提供一系列的 开箱即用的功能 和 自动配置,让开发者可以快速构建生产级别的独立应用程序,而无需手动配…...

03JavaWeb——Ajax-Vue-Element(项目实战)
1 Ajax 1.1 Ajax介绍 1.1.1 Ajax概述 我们前端页面中的数据,如下图所示的表格中的学生信息,应该来自于后台,那么我们的后台和前端是互不影响的2个程序,那么我们前端应该如何从后台获取数据呢?因为是2个程序…...
[leetcode](找到vector中的特定元素并删除)无重复字符的最长子串
一.找到vector中的特定元素并删除 #include <iostream> #include <vector> #include <algorithm> int main() { // 示例 vector std::vector<int> vec {1, 2, 3, 4, 5, 6}; // 要删除的元素 int aim 3; // 查找元素 auto it std::fin…...

Mockito+PowerMock+Junit单元测试
一、单元测试用途 1、日常开发团队要求规范,需要对开发需求代码进行单元测试并要求行覆盖率达到要求,DevOps流水线也会开设相关门禁阀值阻断代码提交,一般新增代码行覆盖率80%左右。 二、Mock测试介绍 1、Mock是为了解决不同的单元之间由于…...
Ncat: bind to :::7777: Address already in use报错问题解决
问题描述 Ncat: bind to :::7777: Address already in use. QUITTING. 具体解决方法 If you are in linux environment try, Use netstat -tulpn to display the processeskill -9 <pid> This will terminate the process If you are using windows, Use netstat -…...

Docker 搭建mysql 连接超时问题,xxl-job启动mysql连接报错,禁用dns
1.本地连接Navicat报错信息,猜测是navicat默认连接超时导致的,后面换成idea一个插件虽然慢但连接上了 2013 - Lost connection to MySQL server at reading initial communication packet 2.启动xxl-job会报错,网上有人mysql驱动与数据库不匹…...

在线图片像素颜色拾取工具
在线图片像素颜色拾取工具,非常方便的一个工具,无需登录,用完就走。 包括中文和英文版本。 https://getcolor.openai2025.com...

Qt之登录界面(splash)
在上一篇多文档窗口设计(MDI)的基础上增加了一个登录界面(splash). 该模块可以扩展为常规的软件登录界面。 界面展示如下 如果用户名和密码输入正确,则调到MDI界面,如果用户名和密码一共输入三次以上,则程序强制退出…...
NotebookLM:Google 最新 AI 笔记助理解析与实战应用
NotebookLM:Google 最新 AI 笔记助理解析与实战应用 在 AI 驱动的生产力工具不断进化的今天,Google 推出的 NotebookLM(Notebook Language Model)成为了一款备受关注的智能笔记助理。它结合了 Google 的大语言模型(LL…...

软路由系统iStoreOS 一键安装 docker compose
一键安装命令 大家好!今天我来分享一个快速安装 docker-compose 的方法。以下是我常用的命令,当前版本是 V2.32.4。如果你需要最新版本,可以查看获取docker compose最新版本号 部分,获取最新版本号后替换命令中的版本号即可。 w…...

vue3本地文件下载
开发记录: vue3本地下载文件要把文件放到public下,如果放在src里面可能会出现这个问题...
纯代码实现给WordPress添加文章复制功能
在给wordpress添加内容时,有时会遇到文章复制的功能,但是wordpress又没有这个功能。把下面一段代码添加到functions.php文件中,就可以实现这个功能。 /** Function for post duplication. Dups appear as drafts. User is redirected to the…...

Redis 中 TTL 的基本知识与禁用缓存键的实现策略(Java)
目录 前言1. 基本知识2. Java代码 前言 🤟 找工作,来万码优才:👉 #小程序://万码优才/r6rqmzDaXpYkJZF 单纯学习Redis可以看我前言的Java基本知识路线!! 对于Java的基本知识推荐阅读: java框架…...

【PyQt】图像处理系统
[toc]pyqt实现图像处理系统 图像处理系统 1.创建阴影去除ui文件 2.阴影去除代码 1.创建阴影去除ui文件 UI文件效果图: 1.1QT Desiger设置组件 1.两个Pushbutton按钮 2.两个label来显示图像 3.Text Browser来显示输出信息 1.2布局的设置 1.先不使用任何La…...
Ruby语言的循环实现
Ruby语言的循环实现深入探讨 在程序设计中,循环是一种常见的控制结构,用于重复执行某些代码块。不同的编程语言提供了不同类型的循环结构,以满足不同的需求。Ruby是一种灵活且易于使用的编程语言,其循环实现方式独具一格…...

地震勘探——干扰波识别、井中地震时距曲线特点
目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...

tree 树组件大数据卡顿问题优化
问题背景 项目中有用到树组件用来做文件目录,但是由于这个树组件的节点越来越多,导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多,导致的浏览器卡顿,这里很明显就需要用到虚拟列表的技术&…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要: 近期,在使用较新版本的OpenSSH客户端连接老旧SSH服务器时,会遇到 "no matching key exchange method found", "n…...
NPOI Excel用OLE对象的形式插入文件附件以及插入图片
static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...
LangFlow技术架构分析
🔧 LangFlow 的可视化技术栈 前端节点编辑器 底层框架:基于 (一个现代化的 React 节点绘图库) 功能: 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...

《Docker》架构
文章目录 架构模式单机架构应用数据分离架构应用服务器集群架构读写分离/主从分离架构冷热分离架构垂直分库架构微服务架构容器编排架构什么是容器,docker,镜像,k8s 架构模式 单机架构 单机架构其实就是应用服务器和单机服务器都部署在同一…...

6.9-QT模拟计算器
源码: 头文件: widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QMouseEvent>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widget(QWidget *parent nullptr);…...