1.Electron初始与安装

这里写目录标题

    • 一、前言
    • 二、下载
    • 三、简要总结

一、前言

原文以及该系列后续文章请参考:安装Electron

随着前端的不断强盛,现在的前端已经不再满足于网页开发了,而是在尝试能否使用前端的开发逻辑来开发PC端的桌面软件。

即用html、js、css这三者来开发桌面软件。

本栏目所介绍的Electron框架就是这众多实践中目前成效最好的一个。

就连家喻户晓的QQ,目前也已经采用了这套框架重写。

其优点就在于:你只需要写一份代码,就能直接在linux、windows、mac这三个主流的操作系统上运行。

这可以极大减少程序员的工作量。

但缺点也是有的,那就是它底层采用的Chrome内核,简单直白的来说就是,你用Electron开发出来的一个软件,就相当于一个浏览器。

因此它的内存占用量、启动速度等等,相比于原生平台开发的软件都会差很多。

但总的来说,依旧是瑕不掩瑜,毕竟如今个人电脑运行速度越来越快,内存越来越大,只要优化的好,这些缺点都不会是问题。

比如著名的vscode就非常的强大!而它就是依靠Electron框架开发、不断优化而来的。

二、下载

其官网教程可以点击这里跳转。

简单来说就是,你要想使用这套框架,你就得先安装Node.js,安装方法其实也很简单,前往官网下载安装即可:Node.js

一般下载长期支持版本:

image-20240213151241424

从上图中的英文说明中也能看出它的作用,它是一个开源跨平台JavaScript的运行时环境。

更简单直白的来说,它就相当于一个没有窗口的浏览器,只不过比浏览器更强大,它可以让你使用js代码操作本地数据。

而在浏览器中,js代码只能用来控制html标签、或者收发网络请求等等操作。

下载安装完成之后,来到控制台,输入node -v,如果能打印出版本号,就说明你已经安装成功了。

image-20240213151433743

打印不出来,可以尝试重启一下电脑。

有了这个,下面我们就可以安装Electron框架了,按照官方文档的指示,你需要先创建一个文件夹,然后用npm初始化这个文件夹:

mkdir my-electron-app && cd my-electron-app
npm init

mkdircd都是cmd命令,前者用于创建文件夹,后者用于进入这个文件夹,中间的&&用于两个命令分隔,为的意思。

也就是只有前者执行成功后,后面这个命令才会执行。

因此上面的my-electron-app只是一个文件夹的名称,可以自己随便取。

然后用npm init来初始化这个文件夹。

npm是你安装node时自带的一个包管理器,以后你下载其它第三方包,都可以用它来下载,这里的初始化,其实也就是在初始化一个包管理文件。

运行了它之后,会出现一系列让你选择的东西,可以直接一直按Enter即可,全部默认,然后这个文件中就会出现一个叫做package.json的文件。

这个文件就是npm的包管理文件,

image-20240213152046445

刚才在命令行让你填的内容,最终也会保存到这个文件中的,所以你可以直接修改这个文件即可。

上面的字段中:

  • name:这个项目的名字(一般我们称开发一个软件的工程为项目),默认取的当前文件夹的名称(我取的就是test-ele

  • version:版本号

  • description:描述信息,也就是这个软件是干嘛的,自己随便填

  • main:这个就比较重要了,这是这个项目的入口文件,也就是代码将从哪个文件开始执行?其默认是index.js

  • scripts:这个也比较重要,脚本执行的,比如上图中test对应的后面一长串的东西,那么以后我就能直接运行npm run test来代替运行后面那一长串的东西,可以让你后面执行的时候少敲一些键盘,而且也更容易记住。

  • author:作者信息

  • license:许可证,这个新手一般用不到,默认即可,除非你想要开源你的代码,那可以再自己研究研究。

上面的步骤仅仅只是完成了一个最基本的、基于node的项目初始化步骤。

完成了基本的项目初始化之后,下面我们就可以开始安装electron了。

按照官方的说法,你可以继续在命令行当前项目目录下,运行npm install --save-dev electron命令来安装Electron框架。

如果能安装成功自然最好,但很多人可能都会安装失败,因为我也安装失败了,所以可以替换为下面的方式。

运行下面这个命令,全局安装另一个包管理器cnpm,并设置镜像网站(https://registry.npmmirror.com):

npm install -g cnpm --registry=https://registry.npmmirror.com

然后,用这个新安装的cnpm包管理器来下载安装Electron即可,速度非常快!

cnpm install --save-dev electron

安装完成后,当前目录下就又会多出一个文件夹:

image-20240213153925250

node_modules文件夹存放的就是我们下载后的包,所有下载的包都会被放在这个文件夹中。

并且此时我们的包管理文件会多出一个devDependenceies的项,该项的作用就是记录我们当前这个项目用到了那些包。

比如这里由于前面我们在命令行中为本项目安装了electron,所以这里就将electron写入其中了,并且后面还有对应使用的版本号。

除此之外,我还将原本的脚本命令test改为了start,并让其值为electron .,这个命令就是electron框架的运行命令,后面我们将直接使用npm run start代替,可以方便使用。

至此,我们的Electron就安装完成了!

三、简要总结

总的来说,上面这样的安装配置过程、乃至后文将要介绍的基本electron程序开发流程,都是一件非常繁琐的事情。

但我依旧还是推荐你挨着将其过一遍,因为这可以让你更好的理解electron的运行逻辑。

事实上在真正的项目开发时,我们并不需要手动执行这些过程,因为已经有相应的开源项目可以让我们免费使用了。

比如后续将要介绍的使用electron模板、或者直接使用vue开发electron。

原文以及该系列后续文章请参考:安装Electron

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

BDD - Python Behave 用户自定义配置文件

BDD - Python Behave 用户自定义配置文件 引言默认 behave.ini 配置文件自定义配置文件json 格式的配置文件ini 格式的配置文件 实例应用项目结构代码BDD/Features/user_data.feature 文件BDD/steps/user_data_steps.py 文件BDD/environment.py 文件默认配置文件 behave.ini自定…

初识Qt | 从安装到编写Hello World程序

文章目录 1.前端开发简单分类2.Qt的简单介绍3.Qt的安装和环境配置4.创建简单的Qt项目 1.前端开发简单分类 前端开发,这里是一个广义的概念,不单指网页开发,它的常见分类 网页开发:前端开发的主要领域,使用HTML、CSS …

2024年【T电梯修理】报名考试及T电梯修理复审考试

题库来源:安全生产模拟考试一点通公众号小程序 T电梯修理报名考试参考答案及T电梯修理考试试题解析是安全生产模拟考试一点通题库老师及T电梯修理操作证已考过的学员汇总,相对有效帮助T电梯修理复审考试学员顺利通过考试。 1、【多选题】增加旧电梯曳引…

OpenAI突然发布首款文生视频模型——Sora;谷歌发布Gemini 1.5,迈向多模态大模型新时代

🦉 AI新闻 🚀 OpenAI突然发布首款文生视频模型——Sora 摘要:OpenAI发布了首个AI视频模型Sora,可以根据文字指令生成神级效果的长视频,引发了广泛关注和震惊。 Sora模型通过深入理解语言和图像,能够创造出…

AI使用 G-API 实现面部美化算法

介绍 在本教程中,您将学习: 示例面部美化算法的基础知识; 如何使用 G-API 推断管道内的不同网络; 如何在视频流上运行 G-API 管道。 先决条件 此示例需要: 装有 GNU/Linux 或 Microsoft Windows 的 PC(支持 Apple macOS&#xf…

紫微斗数双星组合:天同太阴在子午

文章目录 前言内容总结 前言 紫微斗数双星组合:天同太阴在子午 内容 紫微斗数双星组合:天同太阴在子午 性格分析 天同太阴在子午宫同度,二星皆属水,主智、主多情。天同星为感性的星曜,太阴星性质梦幻,二…

百模大战怎么样了?

百度入场最早,paddlegan/paddlepaddle多年前就布局了中小模型,ERNIE1.0 大模型早在2019年就发布了,只不过效果差,成本高没弄起来。 后来借着chatgpt的东风,百度几乎国内第一时间发布了国产大模型文心一言,文…

java 宠物医院系统Myeclipse开发mysql数据库web结构jsp编程计算机网页项目

一、源码特点 java 宠物医院系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0&…

【论文精读】GPT2

摘要 在单一领域数据集上训练单一任务的模型是当前系统普遍缺乏泛化能力的主要原因,要想使用当前的架构构建出稳健的系统,可能需要多任务学习。但多任务需要多数据集,而继续扩大数据集和目标设计的规模是个难以处理的问题,所以只能…

SpringIOC之support模块ResourceBundleMessageSource

博主介绍:✌全网粉丝5W,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战,博主也曾写过优秀论文,查重率极低,在这方面有丰富的经验…

Javaweb之SpringBootWeb案例之AOP核心概念的详细解析

2.3 AOP核心概念 通过SpringAOP的快速入门,感受了一下AOP面向切面编程的开发方式。下面我们再来学习AOP当中涉及到的一些核心概念。 1. 连接点:JoinPoint,可以被AOP控制的方法(暗含方法执行时的相关信息) 连接点指的…

最短路径与关键路径

目录 文章目录 前言 一.最短路径 1.基本概念 1.1什么是源点? 1.2什么是最短路径 2.作用 3.迪杰斯特拉算法 4. 弗洛伊德算法 4.1过程演示 二.拓扑排序 1.基本概念 1.1什么是有向无环图 1.2什么是活动 1.3什么是AOV网 1.4什么是拓扑序列 1.5什么是拓扑…