百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术分类 > 正文

创建Electron工程(electron 新建窗口)

ztj100 2025-04-02 00:34 3 浏览 0 评论

1、安装程序运行环境

在使用 Electron 进行开发之前,您需要安装 Node.js。建议使用最新的LTS版本。 Node.js 的安装过程就不过多赘述了,只需安装提示安装完即可。

要检查 Node.js 是否正确安装,请在您的终端输入以下命令:

node -v
npm -v

这两个命令输出了 Node.js 和 npm 的版本信息时即表示环境安装成功了。

2、创建工程目录

新建名为 demo 的文件夹。


进入 demo 文件夹,打开命令窗口,输入 npm init -y 快速创建 package.json 文件。

执行 npm init -y 命令,在 demo 目录下自动生成 package.json 文件。

3、切换 npm 源

因为众所周知的原因,我们需要切换 npm 的当前源为cnpm。

npm config set registry https://registry.npm.taobao.org/
npm config set ELECTRON_MIRROR http://npm.taobao.org/mirrors/electron/

或者选择另外一个镜像地址

npm config set registry https://registry.npm.taobao.org/
npm config set ELECTRON_MIRROR https://cdn.npm.taobao.org/dist/electron/

查看 npm 的当前源

# 查看当前设置的源
npm config get registry

4、完善项目工程

用 vscode 编辑器打开 demo 文件夹,现在只有 package.json 一个文件,其自动生成的内容如下:


第一步:安装 Electron 的开发依赖。

执行 cnpm install electron -D 命令即可安装最新版的 electron。


第二步:创建入口文件 main.js。

因为任何 Electron 应用程序的入口都是 main 文件。 这个文件控制了主进程,它运行在一个完整的Node.js环境中,负责控制您应用的生命周期,显示原生界面,执行特殊操作并管理渲染器进程。

执行期间,Electron 将依据应用中 package.json 配置下 main 字段中配置的值查找此文件,所以我们创建 main.js 文件,并修改 package.json 配置文件中的入口文件名为 main.js。即将 "main" 对应的 "index.js" 改成 "main.js":

{
  ...
  //"main": "index.js",
  "main": "main.js",
  ...
}


第三步:编辑入口文件。

运行程序就会创建一个宽高位 1200 * 800 的窗口。

// main.js

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

// 这段程序将会在 Electron 结束初始化
// 和创建浏览器窗口的时候调用
// 部分 API 在 ready 事件触发后才能使用。
app.whenReady().then(() => {
  // 创建浏览器窗口。
  const mainWindow = new BrowserWindow({
    width: 1200,
    height: 800,
  })
  
  // 加载 index.html
  mainWindow.loadFile('index.html')
})


第四步:创建页面。

在 main.js 文件中,可能你已经注意到了这行代码: mainWindow.loadFile('index.html')

在 Electron 中,各个窗口显示的内容可以是本地 HTML 文件,也可以是一个远程 url。这里我们采用本地 HTML 的方式,在工程的根目录下创建一个名为 index.html 的文件。


第五步:运行程序。

在 package.json 配置文件中的 "scripts" 加一个命令。

执行 npm run start 命令。


大功告成!!!至此,你已经成功创建并启动了一个 Electron 程序。

相关推荐

从IDEA开始,迈进GO语言之门(idea got)

前言笔者在学习GO语言编程的时候,GO语言在国内还没有像JAVA/Php/Python那样普及,绕了不少的弯路,要开始入门学习一门编程语言,最好就先从选择一个好的编程语言的开发环境开始,有了这个开发环...

基于SpringBoot+MyBatis的私人影院java网上购票jsp源代码Mysql

本项目为前几天收费帮学妹做的一个项目,JavaEEJSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。一、项目介绍基于SpringBoot...

基于springboot的个人服装管理系统java网上商城jsp源代码mysql

本项目为前几天收费帮学妹做的一个项目,JavaEEJSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。一、项目介绍基于springboot...

基于springboot的美食网站Java食品销售jsp源代码Mysql

本项目为前几天收费帮学妹做的一个项目,JavaEEJSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。一、项目介绍基于springboot...

贸易管理进销存springboot云管货管账分析java jsp源代码mysql

本项目为前几天收费帮学妹做的一个项目,JavaEEJSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。一、项目描述贸易管理进销存spring...

SpringBoot+VUE员工信息管理系统Java人员管理jsp源代码Mysql

本项目为前几天收费帮学妹做的一个项目,JavaEEJSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。一、项目介绍SpringBoot+V...

目前见过最牛的一个SpringBoot商城项目(附源码)还有人没用过吗

帮粉丝找了一个基于SpringBoot的天猫商城项目,快速部署运行,所用技术:MySQL,Druid,Log4j2,Maven,Echarts,Bootstrap...免费给大家分享出来前台演示...

SpringBoot+Mysql实现的手机商城附带源码演示导入视频

今天为大家带来的是基于SpringBoot+JPA+Thymeleaf框架的手机商城管理系统,商城系统分为前台和后台、前台用的是Bootstrap框架后台用的是SpringBoot+JPA都是现在主...

全网首发!马士兵内部共享—1658页《Java面试突击核心讲》

又是一年一度的“金九银十”秋招大热门,为助力广大程序员朋友“面试造火箭”,小编今天给大家分享的便是这份马士兵内部的面试神技——1658页《Java面试突击核心讲》!...

SpringBoot数据库操作的应用(springboot与数据库交互)

1.JDBC+HikariDataSource...

SpringBoot 整合 Flink 实时同步 MySQL

1、需求在Flink发布SpringBoot打包的jar包能够实时同步MySQL表,做到原表进行新增、修改、删除的时候目标表都能对应同步。...

SpringBoot + Mybatis + Shiro + mysql + redis智能平台源码分享

后端技术栈基于SpringBoot+Mybatis+Shiro+mysql+redis构建的智慧云智能教育平台基于数据驱动视图的理念封装element-ui,即使没有vue的使...

Springboot+Mysql舞蹈课程在线预约系统源码附带视频运行教程

今天发布的是由【猿来入此】的优秀学员独立做的一个基于springboot脚手架的Springboot+Mysql舞蹈课程在线预约系统,系统项目源代码在【猿来入此】获取!https://www.yuan...

SpringBoot+Mysql在线众筹系统源码+讲解视频+开发文档(参考论文

今天发布的是由【猿来入此】的优秀学员独立做的一个基于springboot脚手架的在线众筹管理系统,主要实现了普通用户在线参与众筹基本操作流程的全部功能,系统分普通用户、超级管理员等角色,除基础脚手架外...

Docker一键部署 SpringBoot 应用的方法,贼快贼好用

这两天发现个Gradle插件,支持一键打包、推送Docker镜像。今天我们来讲讲这个插件,希望对大家有所帮助!GradleDockerPlugin简介...

取消回复欢迎 发表评论: