Electron – 基础学习(1): 环境安装、创建项目及入门

这几天到年底了,公司也没啥事,闲着就到处瞅瞅。记得上一家公司的时候用 Electron+ng1 写过项目,只是那个时候项目框架都是别人搭的,自己只负责写功能,对Electron没啥认识。 这几天想着反正闲着也是闲着,就捡起来自己玩玩,顺便记录一下。

一、环境安装:

  前端开发,现在不管是那个方向,都免不了使用NPM,所以node.js的安装是必须的,也是最基础的一步。

  1、安装node.js,从官网 https://nodejs.org/en/  下载当前node.js LTS包(稳定版本),下载完成后,双击执行。安装完成后,通过CMD命令行 可以看到当前node、npm版本号。

  

  2、npm安装完成后,接下来安装electron。

 npm install -g electron 或 cnpm install -g electron (不会cnpm 自行度娘cnpm)

  注:npm安装,由于资源服务器在国外,请求资源网速较慢,在node install.js 会卡很久(甚至下载失败),所以建议用 cnpm 安装。

  

  npm 终于安装完成了(足足花了40分钟)。

  

二、创建项目:

  npm 和 electron 安装完成后,接下来就可以创建项目了。创建项目有以下三种方式:Git拷贝、通过electron社群提供的命令行工具(CLI)  electron-forge 创建项目、直接创建

  (1)、Git拷贝:Git拷贝,实际就是复制官方 "尝试此例" 代码结构,然后根据自身项目需求进行修改。

    复制并运行这个库 electron/electron-quick-start

    a:新建一个文件夹(路劲中不能含有中文) 克隆这个仓库:https://github.com/electron/electron-quick-start.git

    b:通过命令行(CMD)进入该项目文件夹  electron-quick-start 或代码编辑工具(vscode、webstorm)等直接打开该项目。

    c:进入项目文件夹或打开该项目后,需要安装项目运行的依赖库,直接执行命令:  npm install

    d:依赖库安装完成,就可以启动该应用了,执行命令:  npm start

  

   (2)、第二种是通过electron社群提供的命令行工具(CLI)  electron-forge 创建项目。

    这种方法,前提是先安装CLI工具 electron-forge。由于是CLI工具,便于以后使用,建议全局安装(和安装electron一样,只需首次安装即可)。

    npm install -g electron-forge 或 cnpm install -g electron-forge

    electron-forge安装完成后,通过执行命令:electron-forge init XXXXXX创建项目,其中XXXXXX 既是新建项目的项目名称,同时会新建XXXXXX文件夹以存放项目源文件。

    electron-forge init electronTest

  ,Installing NPM Dependencies 和安装electron一样,会比较久,耐心等候。

  注: 安装模块过程中,若安装失败则删掉node_modules文件夹,重新进入到项目文件夹或打开项目 执行npm install 或 cnpm install 即可。

  等待 Installing NPM Dependencies 执行完成后,进入到项目文件夹XXXXXX(是该项目的文件夹,不是创建该项目的文件夹,创建该项目的文件夹是该项目的父级文件夹)或打开项目XXXXXX 执行命令:  npm start  启动当前项目(通过 electron-forge 创建的项目,在 npm start 启动项目时或项目打包时,会优先检测系统环境 Checking your system)。

   

  (3)、第三种是新建各种文件,直接创建项目。

    a:新建一个文件夹 (该文件夹既是项目名称,同时用以存放项目源文件。注:文件夹名称不能含有中文)

    b:通过命令行(CMD)进入该新建文件夹 或 代码编辑工具(vscode、webstorm)等直接打开该新建文件夹 新建一个 index.html  和一个main.js 文件。

    

    c:初始化 package.json 文件(用以存放项目配置参数),执行命令 npm init,然后根据提示进行参数填写。(注: package.json文件 可以自己新建,也可以不新建。npm init 命令执行完毕后,会自动生成。特注:package.json里面配置项 entry point :(主进程))

    npm init

      

    

    d:index.html 和 main.js 新建完成,package.json配置初始化完成,接下来局部安装 electron (之前是全局安装的),执行命令:npm install --save-dev electron  安装时间还是一如既往的长。

    npm install --save-dev electron

    安装项目依赖包:npm install

    npm install

    e:运行项目:npm start

      - electron .

三、入门:

  index.html文件

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>Hello World!</title>
        <!-- https://electronjs.org/docs/tutorial/security#csp-meta-tag -->
        <meta http-equiv="Content-Security-Policy" content="script-src ‘self‘ ‘unsafe-inline‘;"/>
    </head>
    <body>
        <h1>Hello World!</h1>
        We are using node
        <script>document.write(process.versions.node)</script>, Chrome
        <script>document.write(process.versions.chrome)</script>, and Electron
        <script>document.write(process.versions.electron)</script>.
    </body>
</html>

  main.js文件

const {app, BrowserWindow} = require(‘electron‘);

// 保持对window对象的全局引用,如果不这么做的话,当JavaScript对象被
// 垃圾回收的时候,window对象将会自动的关闭
let win;

function createWindow() {
    // 创建浏览器窗口。
    win = new BrowserWindow({
        width: 800,
        height: 600,
        webPreferences: {
            nodeIntegration: true
        }
    });

    // 加载index.html文件
    win.loadFile(‘index.html‘);

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

    // 当 window 被关闭,这个事件会被触发。
    win.on(‘closed‘, () => {
        // 取消引用 window 对象,如果你的应用支持多窗口的话,
        // 通常会把多个 window 对象存放在一个数组里面,
        // 与此同时,你应该删除相应的元素。
        win = null;
    });
}

// Electron 会在初始化后并准备
// 创建浏览器窗口时,调用这个函数。
// 部分 API 在 ready 事件触发后才能使用。
app.on(‘ready‘, createWindow);

// 当全部窗口关闭时退出。
app.on(‘window-all-closed‘, () => {
    // 在 macOS 上,除非用户用 Cmd + Q 确定地退出,
    // 否则绝大部分应用及其菜单栏会保持激活。
    if (process.platform !== ‘darwin‘) {
        app.quit();
    }
});

app.on(‘activate‘, () => {
    // 在macOS上,当单击dock图标并且没有其他窗口打开时,
    // 通常在应用程序中重新创建一个窗口。
    if (win === null) {
        createWindow();
    }
});

// 在这个文件中,你可以续写应用剩下主进程代码。
// 也可以拆分成几个文件,然后用 require 导入。

  文档注释很清楚。

原文地址:https://www.cnblogs.com/donghuang/p/12167375.html

时间: 2024-10-10 11:16:58

Electron – 基础学习(1): 环境安装、创建项目及入门的相关文章

Cocos2d-x 3.1.1 安装和创建项目---(入门必看)

1.安装python2.7.8,安装cocos2dx 3.1.1,并将python2.7.8安装路径加入系统环境变量中; 2.python2.7.8很简单,基本就是默认就可以了. 3.cocos2dx 3.1.1下载完之后,就解压.然后F:\cocos2d-x-3.1.1\build(我的解压之后是放在f盘的),然后在build这里可以找到cocos2d-win32.vc2012.sln,用vs2012打开它,然后生成解决方案(生成的这个过程比较慢,大概10分钟吧),然后在F:\cocos2d-

Scala学习01 环境安装

Scala是一门运行在jvm上的多范式语言,作为一个java程序员,使用Scala来写写程序,既不用担心会没有java强大的库支持,又能快速地写出简短强悍的代码,除此之外scala还为我们提供了强大的并发支持,Let's love it! 安装 下面来看看如何安装它(在此之前,确保已经安装好了jdk,我使用的jdk1.7). 我们可以通过Scala的官网(http://www.scala-lang.org/download/)来下载Scala.我使用的版本是2.11.1. 将安装包下载在本地之后

[原]零基础学习视频解码之安装ffmpeg

写在文章前面:ffmpeg是一个开源的编解码框架,拥有很强大的功能.但是对于如果使用其来做开发呈现着严重两极分化,大神们讨论着高深的问题,大多数像我这样的小白连门都进不去.最近无意间领会了如何入门,现在写下这个系列文章<零基础学习视频解码>用来帮大家提供入门基础.博主的开发机器是基于Ubuntu 14.04 64位的,所以这个系列的文章都是在Ubuntu下完成的. 一.安装SDL C语言没有图形库,其中SDL比较小巧,并且是开源的,适合入门者学习.另外安装ffmpeg的时候会检测是否安装SDL

Electron – 基础学习(2): 项目打包成exe桌面应用

项目创建完成,启动正常,接下来就是项目打包了.将测试Demo打包成exe桌面应用,点击exe文件,运行项目. 书接上文,创建项目有三种方式 Git拷贝.直接创建.通过electron社群提供的命令行工具(CLI)  electron-forge 创建项目,看起来对应的项目打包方式也应该有三种才对,但其实细看第一种方式和第三种项目创建方式是一样的,所以它们的项目打包方式也是一样的. 打包 electron 项目webpack工具有 electron-packager 和 electron-buil

sencha cmd安装创建项目与编译,特详细。

官方文档 Introduction to Sencha Cmd Using Sencha Cmd with Ext JS 4.2+ Compiler-Friendly Code Guidelines Workspaces in Sencha Cmd 环境要求 Java Run-time Environment or JRE,版本>=6.0. Ruby Sencha Cmd Ext JS SDK 下载安装搭建环境 Sencha Cmd 下载 EXTJS的版本要和 sencha cmd版本对应,不然

UCML快速开发平台学习1-UCML环境安装

       最近公司项目时间紧张,经过各位大神的PK,决定用多年前话10W采购过来,一直被雪藏的UCML来开发.为啥花了钱买回来不用我就不吐槽了. UCML安装         翻看安装手册,貌似不是复杂,一个安装包,数据库是MSSQL2008R2...   环境配置         3部分组成,客户端,服务端,环境库         服务端:除了数据库服务器名,数据库名,用户名密码,是否生效(不要勾),其他的都可以随意,保存项目                       客户端:中规中矩,

php服务器环境安装及项目搭建

2安装运行环境及搭建项目2.1安装apache及测试1)安装apacheyum install httpd 启动apache systemctl start httpd.service 查看运行状态 systemctl status httpd.service 2)编辑测试页面echo "xingming">/var/www/html/index.html 3)打开浏览器输入公网ip地址,结果如下 2.2安装MySQL1)安装mysqlyum install mariadb-se

Scrapy教程——搭建环境、创建项目、爬取内容、保存文件

1.创建项目 在开始爬取之前,您必须创建一个新的Scrapy项目.进入您打算存储代码的目录中,运行新建命令. 例如,我需要在D:\00Coding\Python\scrapy目录下存放该项目,打开命令窗口,进入该目录,执行以下命令: scrapy startproject  tutorial PS:tutorial可以替换成任何你喜欢的名称,最好是英文 该命令将会创建包含下列内容的 tutorial 目录: tutorial/ scrapy.cfg tutorial/ __init__.py i

vue搭建环境并创建项目

1.>npm install @vue/cli -g 2.创建项目A a.>vue ui b.在弹出的管理界面创建项目 或 a.npm install -g @vue/cli-init b.vue init webpack myapp //myapp:项目名称 visual code中添加辅助插件: js-css-html formatter html css support debugger for chrome auto close tag vetur 原文地址:https://www.c