Electron 入门学习案例(electron 初体验)

2023-11-17

Electron 入门学习案例

electron 是桌面端的一个框架。可以把 html+js+css 封装成为一个 exe 或者 其他平台的应用程序。很好的实现了跨平台。并且开发效率很快。

初始化环境

初始化 npm 环境使用命令npm init -V,然后可以生成一个 package.json 的文件。

npm环境初始化以后进而要安装我们的主角 Electron 使用命令 npm i electron

# 全局安装
npm install electron -g
# 安装到本地的项目中
npm install electron -D

这就初始化完毕接下来就是配置启动的命令和热更新的配置

编写基本文件

创建文件 index.js 启动文件

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

const createWindow = () => {
    const win = new BrowserWindow({
        width: 1000,  // 宽
        height: 600,  // 高
    });

    // 加载资源数据 (index.html 文件是要自己手动创建的)
    win.loadFile('./index.html');

    // 打开发者工具
    // win.webContents.openDevTools();
}

app.whenReady().then(createWindow)

创建 index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Electron</title>
</head>
<body>
    <h1>Hello</h1>
</body>
</html>

到这一步其实就可以正常启动 electron 的第一个小 demo 了。不过启动的命令我们最好可以配置到 node 中

配置启动命令

这个就是 electron 的启动命令electron .

配置到 node 下面的就是 npm init -V 生成的 package.json 文件

{
  "name": "electron-basics",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
     // 在这里配置启动的命令
    "start": "electron ."
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "electron": "^20.1.3",
    "nodemon": "^2.0.19"
  }
}

然后在 cmd 窗口运行 npm run start (如果运行命令是 start 的时候 npm start == npm run start

到这一步其实就可以了,但是为了更好的编写代码我们肯定要配置一下热更新的。

热更新

安装插件 nodemon 运行命令 npm i nodemon 然后配置到我们的 package.json 中。

{
  "name": "electron-basics",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
     // 在这里配置启动的命令
    "start": "nodemon --exec electron ."
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "electron": "^20.1.3",
    "nodemon": "^2.0.19"
  }
}

大功告成!!!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Electron 入门学习案例(electron 初体验) 的相关文章

随机推荐

  • Python开发环境配置

    安装Anaconda Anaconda是Python的一个科学计算发行版 内置了数百个Python经常会使用的库 也包括做机器学习或数据挖掘的库 如Scikit learn NumPy SciPy和Pandas等 其中可能有一些是Tenso
  • YOLOv5行人检测

    YOLOv5行人检测 1 数据准备 1 下载数据集 2 整理出jpg和xml 2 进行YOLOV5的部署训练 1 划分数据集 2 生成yolo的txt文件 3 配置自己数据集的文件 4 聚类找anchors 5 配置模型文件 6 训练模型
  • 如何修复引导/错误代码0xc000000f

    现象 安装完系统后启动时报文件丢失 文件 okldr mbr 或者 scldr mbr 等错误 状态 0xc000000f 处理办法 1 用U盘做一个PE启动盘 可以用 U大侠 小白一键重装等 2 bios启动选项选择U盘启动 3 重启电脑
  • Mysql实战45讲 - 学习笔记

    Sql流程 一条查询语句的执行过程一般是经过连接器 分析器 优化器 执行器等功能模块 最后到达存储引擎 大体来说 MySQL 可以分为 Server 层和存储引擎层两部分 Server 层包括连接器 查询缓存 分析器 优化器 执行器等 涵盖
  • SSM框架整合layui之实现登录功能

    SSM框架整合layui之实现登录功能 代码 UserService接口 UserServiceImpl实现类 SUserMapper接口 SUserMapper xml SystemController login jsp 代码 User
  • 缓存淘汰算法 —— LFU-Aging(Java实现)

    Java实现 用HashMap保存关系 key值 命中次数与上次命中时间 当需要淘汰某个key值时 调用map remove key import java util public class LFUAgingMap
  • 决策树之ID3的matlab实现

    森林内的两条分叉路 我选择了人迹罕见的一条 从此一切变得不一样 佛洛斯特Robert Frost 目录 一 决策树介绍 1 1 相关概念 1 2 图形表示 1 3 规则表示 二 决策树的信息计算 三 ID3相关介绍 3 1 ID3算法概述
  • 超参数和验证集

    感知机是神经网络的基础 对于形式上完全相同的感知机 模型参数不同 可以实现不同的运算 因此 可以通过训练学习模型参数来形成不同的功能 这也是人工神经网络具有强大学习能力的基础 例如下图这个简单得感知机来说 模型参数取不同的值 就实现了不同的
  • 与Android对接注册接口的session会话取值为null问题

    与Android对接注册接口的session会话取值为null问题 问题 最近在改造一个springboot项目时在后端写好登录接口后 Android调用登录成功后 调用其他接口时发现获取session为null 经过swagger一番测试
  • 一次prime1靶场红队渗透实战,从主机发现到Linux内核漏洞提权

    前言 相比于如DVWA pikachu等靶场 完整系统的靶场更突出一个 无目的性 和 复杂性 就好似一个密室逃脱游戏 存在着离谱的漏洞也存在着奇怪的提示 但是真实的渗透测试就是一个无目的的过程 当你在迷宫中走一遭 那么当你下一次遇见复杂的路
  • 1361: [蓝桥杯2018初赛]乘积尾零

    蓝桥杯2018省赛A组第3题 题目链接http oj ecustacm cn problem php id 1361 思路 找出2 5的个数 取最小的即可 include
  • Redis五大数据类型使用——String

    1 String 字符串 添加 查询 追加 获取长度 判断是否存在的操作 C Users 12559 gt redis cli exe 启动redis 127 0 0 1 6379 gt set name kobe 插入一个key为 nam
  • [附源码]java毕业设计高校学生疫情防控信息管理系统

    项目运行 环境配置 Jdk1 8 Tomcat7 0 Mysql HBuilderX Webstorm也行 Eclispe IntelliJ IDEA Eclispe MyEclispe Sts都支持 项目技术 SSM mybatis Ma
  • 【JavaWeb】Thymeleaf的简介与使用

    Thmeleaf MVC 为什么需要MVC 我们之前在书城项目第二阶段做登录的时候 曾经提出过优化登录失败后的处理 虽然说可以实现在登录失败之后跳转回到登录页面 并且展示失败信息 但是代码实在是太恶心了 根本没法维护 所以我们需要将视图展示
  • 【转】深度强化学习的加速方法

    原文地址 https www matools com blog 190533310 Accelerated methods for deep reinforcement learning 论文解读 深度强化学习一直以来都以智能体训练时间长
  • openGauss学习笔记-07 openGauss 语法

    文章目录 openGauss学习笔记 07 openGauss 语法 7 1 帮助 7 2 SQL语句格式 7 3 SQL语法 ABORT ALTER AUDIT POLICY ALTER DATA SOURCE ALTER DATABAS
  • Android实现图片点击放大

    第一步 查看大图 implementation com github SherlockGougou BigImageViewPager v4 6 1 1 第二步 在图片点击事件里调用 ImagePreview getInstance 上下文
  • 【mybatis】【mybatisPlus】

    springboot 下 mybatis mybatisPlus Mybatis的作用 配置数据源和mybatis的配置 Mybatis的作用 Mybatis就是帮助程序员将数据存取到数据库里面 MyBatis 是一个半自动化的ORM框架
  • 使用Java socket简单模拟HTTP服务器

    1 HTTP server 接收client端的http请求并将同级目录的root 返回 package httpDemo import java io InputStream import java io OutputStream imp
  • Electron 入门学习案例(electron 初体验)

    Electron 入门学习案例 electron 是桌面端的一个框架 可以把 html js css 封装成为一个 exe 或者 其他平台的应用程序 很好的实现了跨平台 并且开发效率很快 初始化环境 初始化 npm 环境使用命令npm in