Electron入门笔记(一)-自己快速搭建一个app demo
Electron学习-快速搭建app demo
作者: 狐狸家的鱼
Github: 八至
一.安装Node
1.从node官网下载 ,最好安装.msi后缀名的文件,新手可以查看安装教程进行安装。
2.然后cmd进入命令窗口,输入npm -v查看node当前版本,
二.创建文件并初始化
1.在自己喜欢的盘里新建项目文件,我是 E:\Electron\resources\app,在此文件目录app下打开命令窗口,按住shift ,右击空白处,选择在此处打开powershell命令窗口
2.在命令窗口输入:npm init,然后一直回车,直到package.json文件完成
3.在VS code中打开项目文件,新建Index.html 和mian.js,并将json文件中的主进程配置成:"main":"main.js"
4.在项目文件下安装electron :npm install electron,不建议全局安装,不使用npm install electron -g
5.在main.js文件中写入如下代码:
/******************** ** main.js文件内容 ** ********************/ // 导入electron模块 const electron = require('electron') // 应用生命控制app const app = electron.app // 创建一个原生浏览器窗口 const BrowserWindow = electron.BrowserWindow // 引入path和URL模块 const path = require('path') const url = require('url') // 保持对窗口对象的全局引用 // 否则,窗口对象会在JS对象垃圾回收时自动关闭 let mainWindow function createWindow () { // 创建浏览窗口 mainWindow = new BrowserWindow({width: 800, height: 600}) // 加载app的index.html文件 mainWindow.loadURL(url.format({ pathname: path.join(__dirname, 'index.html'), protocol: 'file:', slashes: true })) // Open the DevTools.打开开发者工具DevTools // mainWindow.webContents.openDevTools() // Emitted when the window is closed. 当窗口被关闭时,触发此事件 mainWindow.on('closed', function () { // 取消引用 window 对象,如果你的应用支持多窗口的话, // 通常会把多个 window 对象存放在一个数组里面, // 与此同时,你应该删除相应的元素。 mainWindow = null }) } // Electron初始化完成,并准备好创建浏览窗口之后 // 调用函数createWindow // 一些API也只有在此事件(ready)触发之后才能使用 app.on('ready', createWindow) // 当所有窗口被关闭时,即事件window-all-closed被触发后,退出程序 app.on('window-all-closed', function () { // 对于MacOS用户,往往需要使用command+q完全退出程序 // 否则,绝大部分其菜单栏会保持激活状态。即程序并未完全退出。 // 对于非Darwin平台来讲,如Windows,则直接退出程序 if (process.platform !== 'darwin') { app.quit() } }) // 若程序activate事件被触发时,执行该操作,创建一个新窗口 app.on('activate', function () { // 在Mac系统中,若其他窗口都已关闭,点击dock面板上的程序图标时 // 会重新创建一个窗口 if (mainWindow === null) { createWindow() } }) // 在这文件,你可以续写应用剩下主进程代码。 // 也可以拆分成几个文件,然后用 require 导入
6.index.html写入
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Hello World!</title> </head> <body> <h1>Hello World!</h1> <!-- 再次渲染进程中,你可以使用任何Node.js的API --> We are using Node.js <script>document.write(process.versions.node)</script>, Chromium <script>document.write(process.versions.chrome)</script>, and Electron <script>document.write(process.versions.electron)</script>. </body> <script> // 同样的,你也可以在此进程中引入其他文件 require('./renderer.js') </script> </html>
7.局部安装要在.\node_modules\.bin\目录下运行命令electron. 全局安装就在根目录文件下运行electron.
8.应用程序打包,详情可以参考官方
9.如果想要让app代码不可见,可进行压缩,具体也可看官方文档进行操作
也是第一次了解学习Electron,还在摸索中,有不足可以指点一二哈。
Electron入门笔记(一)-自己快速搭建一个app demo的更多相关文章
- 快速搭建一个直播Demo
缘由 最近帮朋友看一个直播网站的源码,发现这份直播源码借助 阿里云 .腾讯云这些大公司提供的SDK 可以非常方便的搭建一个直播网站.下面我们来给大家讲解下如何借助 腾讯云 我们搭建一个简易的 直播示例 ...
- springboot入门(一)--快速搭建一个springboot框架
原文出处 前言在开始之前先简单介绍一下springboot,springboot作为一个微框架,它本身并不提供Spring框架的核心特性以及扩展功能,只是用于快速.敏捷地开发新一代基于Spring框架 ...
- vue 快速入门 系列 —— 使用 vue-cli 3 搭建一个项目(上)
其他章节请看: vue 快速入门 系列 使用 vue-cli 3 搭建一个项目(上) 前面我们已经学习了一个成熟的脚手架(vue-cli),笔者希望通过这个脚手架快速搭建系统(或项目).而展开搭建最好 ...
- vue 快速入门 系列 —— 使用 vue-cli 3 搭建一个项目(下)
其他章节请看: vue 快速入门 系列 使用 vue-cli 3 搭建一个项目(下) 上篇 我们已经成功引入 element-ui.axios.mock.iconfont.nprogress,本篇继续 ...
- 【Head First Servlets and JSP】笔记6:什么是响应首部 & 快速搭建一个简单的测试环境
搭建简单的测试环境 什么是响应首部 最简单的响应首部——Content-Type 设置响应首部 请求重定向与响应首部 在浏览器中查看Response Headers 1.先快速搭建一个简单的测试环境, ...
- 快速搭建一个Quartz定时任务【转载,好文 ,值得收藏,亲身试用 效果不错】
Quartz.NET 入门 概述 Quartz.NET是一个开源的作业调度框架,非常适合在平时的工作中,定时轮询数据库同步,定时邮件通知,定时处理数据等. Quartz.NET允许开发人员根据时间间隔 ...
- 快速搭建一个“微视”类短视频 App
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯云视频发表于云+社区专栏 关注公众号"腾讯云视频",一键获取 技术干货 | 优惠活动 | 视频方案 " ...
- 如何快速搭建一个 Node.JS 项目并进入开发?
了解:如何快速搭建一个项目并进入开发? 在此不概述 Node.JS 的历史以及发展过程. 因为之前接触过通过 Java 开发语言,所以明确地知道一个服务器所需的文件,以及一个服务器所需要的操作. 那么 ...
- NodeJS 最快速搭建一个HttpServer
最快速搭建一个HttpServer 在目录里放一个index.html cd D:\Web\InternalWeb start http-server -i -p 8081
随机推荐
- [转帖]你云我云•兄弟夜谈会 第三季 企业IT架构
你云我云•兄弟夜谈会 第三季 企业IT架构 https://www.cnblogs.com/sammyliu/p/10425252.html 你云我云•兄弟夜谈会 第三季 企业IT架构 你云我云•兄弟 ...
- WebService实例-CRM系统提供WebService实现用户注册功能
<—start—> 编写crm的webservice接口,实现客户信息保存操作.在CustomerService接口中新增一个服务接口,用于添加客户注册的信息. @Path("/ ...
- 极验3.0滑动拼图验证的使用--java
[ 前言: 在登录其他网站的时候,看到有个滑动拼图的验证觉得挺好玩的,以前做一个图片验证的小demo,现在发现很多网站都开始流行滑动拼图的验证了,今天也想自己动手来弄一个. 废话不多说,开始撸起来! ...
- Linux基础学习笔记4-文本处理
本章内容 抽取文本的工具 文件内容:less和cat 文件截取:head和tail 按列抽取:cut 按关键字抽取:grep 文件查看 文件查看命令:cat,tac,rev cat [OPTION] ...
- python爬虫scrapy之登录知乎
下面我们看看用scrapy模拟登录的基本写法: 注意:我们经常调试代码的时候基本都用chrome浏览器,但是我就因为用了谷歌浏览器(它总是登录的时候不提示我用验证码,误导我以为登录时不需要验证码,其实 ...
- jenkins 邮箱设置
一.先设置管理员邮箱地址 二.设置邮箱
- 重写TreeView模板来实现数据分层展示(一)
总想花些时间来好好总结一下TreeView这个WPF控件,今天来通过下面的这几个例子来好好总结一下这个控件,首先来看看一个常规的带虚线的TreeView控件吧,在介绍具体如何完成之前首先来看看最终实现 ...
- 莫烦scikit-learn学习自修第二天【算法地图】
1. 算法地图
- MSDN学习: 加密解密Config文件中的Sections( Encrypting and Decrypting Configuration Sections)
https://msdn.microsoft.com/en-us/library/wfc2t3az(v=vs.100).aspx https://msdn.microsoft.com/en-us/li ...
- ExportHandler.ashx
using KYZWeb.Common;using Liger.Data;//using Microsoft.Office.Interop.Excel;using System;using Syste ...