1、从网上下载的是nodejs的v0.10.42版本的安装文件,安装node-v0.10.42-x86.msi都使用默认安装,安装完成后会安装在C:\Program Files\nodejs\目录下,然后直接把安装的目录C:\Program Files\nodejs\拷贝出来,然后再拷贝到另外一个全新的系统上,假如我放到d:\nodejs\这个目录下,在这个目录中创建一个run.bat文件作为我们的运行环境。

编辑run.bat文件,输入内容如下:

@echo off

echo        ---------- init Node JS environment ---------- & echo.

if not EXIST "%APPDATA%\npm" ( md "%APPDATA%\npm" )
if not EXIST "%cd%\node_global" ( md "%cd%\node_global" )
if not EXIST "%cd%\node_cache" ( md "%cd%\node_cache" ) if not EXIST "%cd%\tmp.txt" ( call npm config set prefix "%cd%\node_global")
if not EXIST "%cd%\tmp.txt" ( call npm config set cache "%cd%\node_cache")
echo.>tmp.txt set path=%cd%\node_global;%cd%;%path%
set node_path=%cd%\node_global\node_modules ::这一步应该可以不需要配置 call npm config get prefix & echo. &echo.
echo ------------------------------------------------------------
call npm config get cache & echo.
echo ============================================================
echo. & echo Node JS system environment is ready & echo. & echo. cmd /k

以上代码我不多解释,相信对你来说都是小意思,现在我们可以双击run.bat这个文件,则打开一个cmd窗口,在这个窗口中你可以切换到任何目录下,然后执行node -v 和 npm -v查看当前node和npm的版本号,如下:

因为可能的wall问题,所以建议把npm的仓库切换到国内taobao仓库,执行下面的命令:

  1. npm config set registry "https://registry.npm.taobao.org/"

2. Electron的安装
因为前面已经启用了node/npm,所以可以采用npm的方法安装Electron。
为了测试的方便,我是在命令行窗口中采用下面的命令:

  1. npm install -g electron

把Electron安装到系统全局中的。你也可以在你开发项目下采用不加'-g'的命令进行安装。

3. 编程环境安装
当前微软提供了一个强大的免费开发工具VISUAL STUDIO CODE ,直接下载安装即可,它支持nodejs等的代码提示,很是方便。

4. 打包输出工具
为了方便最终成果输出,建议安装electron-packager工具,安装也很简单,建议以下面的命令全局安装。

  1. npm install -g electron-packager

5. 如果需要采用git进行版本控制,建议安装git工具
直接在git 下载最新版本的安装即可。

至此实际上开发环境已经搭建好了。下面说一下开发流程。

到空白的项目目录中,打开命令行窗口(也可以打开git bash)
0. 如果需要git,先做

  1. git init

1.构建项目package.json文件

  1. npm init

根据需要输入内容(下面的内容根据Electron Quick start编写)。即在package.json中有如下内容:

  1.  {
    "name" : "electron-quick-start",
    "version" : "1.0.0",
    "main" : "main.js"
    }

2.重新写入依赖

  1. npm install electron --save
  2. npm install electron-packager --save-dev

3.在main.js中输入

  1. const {app, BrowserWindow} = require('electron')
  2. let win
  3. function createWindow () {
  4. win = new BrowserWindow({width: 800, height: 600})
  5. win.loadURL(`file://${__dirname}/index.html`)
  6. win.webContents.openDevTools()
  7. // 处理窗口关闭
  8. win.on('closed', () => {
  9. win = null
  10. })
  11. }
  12. // Electron初始化完成
  13. app.on('ready', createWindow)
  14. // 处理退出
  15. app.on('window-all-closed', () => {
  16. if (process.platform !== 'darwin') {
  17. app.quit()
  18. }
  19. })
  20. app.on('activate', () => {
  21. if (win === null) {
  22. createWindow()
  23. }
  24. })

4. 在index.html中输入

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Hello World!</title>
  6. </head>
  7. <body>
  8. <h1>Hello World!</h1>
  9. node 当前使用的node为<script>document.write(process.versions.node)</script>,
  10. Chrome 为<script>document.write(process.versions.chrome)</script>,
  11. 和 Electron 为<script>document.write(process.versions.electron)</script>.
  12. </body>
  13. </html>

5. 测试执行

  1. electron .

这将打开一个新的窗口,如图
也可以统一纳入npm管理,即在package.json中添加字段定义

  1. "scripts": {
  2. "start":"electron ."
  3. }

这样就可以在命令行中用 npm start 来启动程序。
6. 打包输出

  1. electron-packager . --platform=win32

将在项目目录下建立一个输出文件夹“electron-quick-start-win32-x64”(注意这里的目录名称win32-x64前的部分是package.json中name字段值),里面就是放置的整个项目的打包,可以复制这个文件夹到任何win32环境中运行(其中electron-quick-start.exe其启动文件),这个工作也可以纳入npm统一管理,在package.json
的“scripts”字段下增加子字段定义即可。如:

  1. "scripts": {
  2. "start":"electron .",
  3. "win32pack":"electron-packager . --platform=win32 --overwrite"
  4. }

这样就可以在命令行中用 npm run win32pack 来输出win32环境下的打包程序("--overwrite"选项用于覆盖输出)。

electron 安装的更多相关文章

  1. Electron安装过程深入解析(读完此文解决Electron应用无法启动,无法打包的问题)

    1. 安装Electron依赖包 开发者往往通过npm install(或 yarn add)指令完成为Node.js工程安装依赖包的工作, 安装Electron也不例外,下面是npm和yarn的安装 ...

  2. Electron安装

    1.安装nodejs和npm 官网下载地址:https://nodejs.org/en/download/ 安装包:下载.msi 安装完成后: nodejs.npm都会安装好,path环境变量也自动设 ...

  3. electron安装+运行+打包成桌面应用+打包成安装文件+开机自启动

    1.初始化node项目,生成package.json文件 npm init 2.安装electron,并保存为开发依赖项 npm install electron -D 3.根目录下新建index.j ...

  4. electron安装到第一个实例

    1.node.js下载,然后安装.下载地址:链接:http://pan.baidu.com/s/1o7TONhS 密码:fosa 2.cmd下输入:npm install electron-prebu ...

  5. Electron 安装与使用

    Electron是使用 JavaScript, HTML 和 CSS 构建跨平台的桌面应用 本文基于Windows进行开发的过程,记录下来,以便日后使用,Electron官网:https://elec ...

  6. electron安装与使用

    系统 WIN10 X64 1. python-2.7.15.amd64.msi 2. node-v10.4.1-x64.msi 3. VS2015 community(社区版) 4. npm conf ...

  7. electron 安装失败解决办法

    1.安装node https://nodejs.org/en/download/2.安装镜像工具npm install -g cnpm --registry=https://registry.npm. ...

  8. electron 安装使用

    1.安装 node.js 链接:http://pan.baidu.com/s/1o7W7BIy 密码:y6od 一路next 我安装在F:\Program Files\node.js下 2.检查nod ...

  9. 为Electron 安装 vue-devtool等扩展

    相关代码: https://github.com/WozHuang/Barrage-helper/blob/master/src/main/index.dev.js 在SPA逐渐成为构建优秀交互体验应 ...

随机推荐

  1. 什么是JavaScript

    来源:https://www.koofun.com/pro/kfpostsdetail?kfpostsid=30&cid= JavaScript是一种松散类型的客户端脚本语言,在用户浏览器中执 ...

  2. mysql+thinkphp +amcharts 完成图表统计功能

    思路:从mysql数据库查询数据,经过thinkphp 后端控制器做逻辑处理,返回给前端,前端调用Amcharts 插件 1.数据查询: public function order($time='', ...

  3. Html.Action Html.RenderAction Html.Partial Html.RenderPartial Url.Action Html.ActionLink 大括号和小括号区别

    在查阅了一些资料后,结论如下: Action 是以mvchtmlstring的方式返回一个结果,RenderAction 无返回值,速度上action慢于RenderAction partial和Re ...

  4. C++内联函数、宏定义和普通函数的区别

    C++内联函数.宏定义和普通函数的区别? 宏定义:在预处理阶段进行简单的文本替换,不会进行参数类型检查: 内联函数:在编译器的时候进行代码插入,编译器会在每次调用内联函数的地方直接将内联函数的内容展开 ...

  5. Python——序列封包与序列解包

    一.序列封包与序列解包 把多个值赋给一个变量时,Python会自动的把多个值封装成元组,称为序列封包. 把一个序列(列表.元组.字符串等)直接赋给多个变量,此时会把序列中的各个元素依次赋值给每个变量, ...

  6. 主成分分析法(PCA)答疑

    问:为什么要去均值? 1.我认为归一化的表述并不太准确,按统计的一般说法,叫标准化.数据的标准化过程是减去均值并除以标准差.而归一化仅包含除以标准差的意思或者类似做法.2.做标准化的原因是:减去均值等 ...

  7. 计算机视觉2D几何基元及其变换介绍和OpenCV WarpPerspective源码分析

    2D图像几何基元 一般的,表示一个2d几何基元只用两个维度(比如x,y)就可以表示了,但是在计算机视觉研究中,为了统一对2d几何基元的操作(后面讲到的仿射,透射变换),一般会以增广矢量的方式表示几何基 ...

  8. Dapper学习总结

    看了<Dapper从入门到精通>后的总结 (1)Dapper 是直接扩展 IDBConnection,而且是单独一个文件,可以直接嵌入到项目中使用. (2)通过手写sql语句,调用exec ...

  9. javascript原生方法集锦

    1.sort方法sort()方法使数组中的元素按照一定的顺序排列. 语法: arrayObject.sort(方法函数) 参数说明: 1.如果不指定<方法函数>,则按unicode码顺序排 ...

  10. Postgres-XL的限制

    Postgres-XL是基于PostgreSQL的一个分布式数据库. 相比于PostgreSQL,XL的表的数据是可以分布到不同的datanode上的,对存在于不同的datanode上的数据进行处理, ...