【electron】electron项目创建的方式:

文章目录

        • [【1】npm init @quick-start/electron(推荐)](#【1】npm init @quick-start/electron(推荐))
        • [【2】 克隆仓库,快速启动](#【2】 克隆仓库,快速启动)
        • [【3】 通过脚手架搭建项目](#【3】 通过脚手架搭建项目)
        • [【4】 手动创建项目](#【4】 手动创建项目)

【Electron官网】https://www.electronjs.org/zh/docs/latest/api/app

【1】npm init @quick-start/electron(推荐)

在命令行中执行以下命令:

bash 复制代码
npm init @quick-start/electron

该命令将安装并执行脚手架工具 create-electron 。你将看到一些可选功能的提示,例如框架 (vue, react, ...) 和 TypeScript 支持:

创建项目后,按照说明安装依赖项并启动Electron程序:



【2】 克隆仓库,快速启动

bash 复制代码
#1. 克隆项目;
git clone https://github.com/electron/electron-quick-start

#2. 进入这个项目下;
cd electron-quick-start

#3. 安装依赖;
npm install

#4. 运行项目;
npm start

打开快速启动的项目,主要有以下几个文件:

(1). index.html ,渲染进程;

(2). render.js,渲染进程,在index.html中引用;

(3). main.js,主进程;

(4). preload.js,监听DOM加载完成,在主进程中调用。

【3】 通过脚手架搭建项目

electron-forge是一个用来搭建electron项目的脚手架,不仅可以用来运行项目,还可以用来打包项目。

官网:Getting Started - Electron Forge

bash 复制代码
#如果电脑上安装了安装了最新版本的 node 可以使用 npx 创建项目,如果安装了 yarn 也可以使用 yarn 创建项目;
npx create-electron-app my-new-app或者yarn create electron-app my-new-app

#运行项目;
cd my-new-app  // 进入项目
npm start  // 启动项目

如果无法使用npx或是yarn安装项目,可以用传统的方法来完成。

bash 复制代码
// 安装脚手架
npm install -g @electron-forge/cli
 
// 初始化项目
electron-forge init my-new-app
 
// 进入项目
cd my-new-app
 
// 启动项目
npm start

【4】 手动创建项目

  1. 新建项目文件夹;
  2. 新建渲染进程 index.html 文件与主进程 main.js 文件;
  3. 初始化项目,创建package.json;
bash 复制代码
npm init 
#请注意,package.json中的主文件必须名为main.js。 
  1. 在项目中安装Electron;虽然在全局有安装Electron,但是在写代码的时候并没有提示,所以需要进入项目中安装一下,这样就会有提示了。
bash 复制代码
cnpm i electron --save-dev
  1. 编写主进程main.js代码;
bash 复制代码
const { app, BrowserWindow } = require("electron");
const path = require("path");
 
const createWindow = ()=>{
    // 创建窗口
    const mainWindow = new BrowserWindow({
        width: 800,
        height: 600
    });
    // 加载本地文件
    mainWindow.loadFile(path.join(__dirname,"index.html"));
    // 加载远程地址
    // mainWindow.loadURL('https://github.com');
}
 
// 监听应用的启动事件
app.on("ready",createWindow);
 
// 兼容MacOS系统的窗口关闭功能
app.on("window-all-closed",()=>{
    // 非MacOS直接退出
    if(process.platform!="darwin"){
        app.quit();
    }
});
 
// 点击MacOS底部菜单时重新启动窗口
app.on("activate",()=>{
    if(BrowserWindow.getAllWindows.length==0){
        createWindow();
    }
})
  1. 引入eslint 检查代码;
bash 复制代码
(1). 安装eslint;

cnpm install -g eslint
(2). 在项目中初始化eslint;

eslint --init
初始化时会有各种选项,选项可以参考下面的结果。 
  1. 运行项目;
bash 复制代码
electron .
相关推荐
Codigger官方6 分钟前
Linux 基金会牵头成立 React 基金会:前端开源生态迎来里程碑式变革
linux·前端·react.js
90后的晨仔7 分钟前
🌟 Vue3 + Element Plus 表格开发实战:从数据映射到 UI 优化的五大技巧
前端
ObjectX前端实验室1 小时前
【图形编辑器架构】🧠 Figma 风格智能选择工具实现原理【猜测】
前端·react.js
天桥下的卖艺者1 小时前
R语言基于shiny开发随机森林预测模型交互式 Web 应用程序(应用程序)
前端·随机森林·r语言·shiny
技术钱1 小时前
vue3 两份json数据对比不同的页面给于颜色标识
前端·vue.js·json
路很长OoO1 小时前
Flutter 插件开发实战:桥接原生 SDK
前端·flutter·harmonyos
技术钱1 小时前
react+andDesign+vite+ts从零搭建后台管理系统(三)-Layout布局
javascript·react.js·ecmascript
开水好喝2 小时前
Code Coverage Part I
前端
DoraBigHead2 小时前
🧭 React 理念:让时间屈服于 UI —— 从同步到可中断的演化之路
前端·javascript·面试
千码君20162 小时前
React Native:发现默认参数children【特殊的prop】
javascript·react native·ecmascript·react·组件树