- 原文链接: https://chowyi.com//hello-electron/
- 版权声明: 文章采用 CC BY-NC-SA 4.0 协议进行授权,转载请注明出处!
近半年来接触到了大量的前端开发工作,ReactJs, NodeJs等技术让我对Web前端有了颠覆性的认识。常年游走在后端的我,也对Js产生了浓厚的兴趣。这两天发现了Electron,看起来很有意思,学习记录一下。
What is Electron?
官网的介绍:
Build cross platform desktop apps with JavaScript, HTML, and CSS
If you can build a website, you can build a desktop app. Electron is a framework for creating native applications with web technologies like JavaScript, HTML, and CSS. It takes care of the hard parts so you can focus on the core of your application.
Electron是一个基于 Node.js 和 Chromium 的框架,你可以使用JavaScript, HTML 和 CSS来构建跨平台的桌面应用。
我以前用过C++写过Qt,用C#写过WPF, 用Java写过Swing,但用Js来构建桌面应用,我还是第一次听说。而且因为是基于Node.js,Electron天然的拥有跨平台的特性。看起来很可口,赶紧试一试!
第一个Electron项目
安装 node 和 npm
非常简单,网上教程很多,不再赘述。已安装跳过此步骤。
Windows 和 Linux方法相同:
下载编译好的程序包解压到任意目录,配置好环境变量即可。
国内用户可以执行npm install cnpm -g
安装cnpm来使用淘宝的npm镜像加速。
使用npm初始化项目
- 新建项目目录
hello
- 在项目目录
hello
下执行npm init
,根据提示填写项目信息。完成后会在当前目录下生成一个1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35E:\test\electron\hello>npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help json` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg> --save` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
name: (hello)
version: (1.0.0)
description: This is my fisrt Electron application.
entry point: (index.js)
test command:
git repository:
keywords:
author: ChowYi
license: (ISC)
About to write to E:\test\electron\hello\package.json:
{
"name": "hello",
"version": "1.0.0",
"description": "This is my fisrt Electron application.",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "ChowYi",
"license": "ISC"
}
Is this ok? (yes)package.json
文件。 - 执行
npm install --save-dev electron
安装Electron
--save
表示安装完成后自动在上一步生成的package.json
文件中添加此软件为依赖项
-dev
表示把依赖项添加到开发环境而不是生产环境的配置中
注:网上大部分教程这一步的命令是:npm install --save-dev electron-prebuilt
,这已经过时了。这么做也许依然可以成功安装,但官方更推荐新的用法,关于其中的来龙去脉有兴趣的同学可以看这篇文章。 - 安装完成后
package.json
应该如下(版本号也许会不一样):1
2
3
4
5
6
7
8
9
10
11
12
13
14{
"name": "hello",
"version": "1.0.0",
"description": "This is my fisrt Electron application.",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "ChowYi",
"license": "ISC",
"devDependencies": {
"electron": "^1.6.6"
}
}编写代码
在项目目录hello
下新建文件index.js
,文件名取决于package.json
中main
配置的值。
编写代码:
(这段代码来自electron的示例项目,注释清晰完备,不需要再解释什么了)
1 | const electron = require('electron') |
上面的代码中加载了index.html
文件,所以我们现在新建文件index.html
:
1 |
|
启动项目
4.1 设置启动脚本:在package.json
中的scripts
部分再加一行:"start": "electron ."
4.2 执行npm start
启动项目
完成
如果项目启动没有报错,而且弹出了一个窗口,写着大大的 Hello World! 就说明我们的第一个Electron项目成功了!
- 原文链接: https://chowyi.com//hello-electron/
- 版权声明: 文章采用 CC BY-NC-SA 4.0 协议进行授权,转载请注明出处!