模板和命令行界面
Electron 的开发并不那么死板. 也就是说, 开发, 编译, 打包, 与发布 Electron 应用程序的方法中, 没有一个是可以称为 “唯一标准” 的方法. Electron 的编译和运行时相关额外功能通常可以在 npm 的独立安装包中找到, 这样开发者就可以根据自己的需求同时编译应用和 build pipeline.
得益于高度的模块化和扩展性,所有的开发团队,无论大小都可以在整个开发周期中无往不利、所向披靡。 与此同时,对于大多数开发者来说如果能有一款社区驱动的boilerplates或者命令行 工具,无疑会使应用的编译、打包、分发更加简单。
模板与命令行界面
一个模板就像是一张空白的画布,你可以以它为基础来搭建你的应用。 通常来说,你可以从一个代码仓库克隆一个模板,然后修改成你心仪的样子。
命令行工具则是在整个开发和分发过程中从另一方面给你提供帮助。 他们更有用,但同时也对代码结构和构建项目有着硬性的要求。 特别是对于初学者来说,命令行工具十分有用。
electron-forge
Electron Forge 是一个用来构建现代化Electron应用的完善的工具。 Electron Forge将多个现有的( 且有稳定维护的 )Electron构建工具整合为一个简单易用的工具包,所有人都可以用它来快速地搭建Electron开发环境。
Forge 始于一个使用了 Webpack 作为打包器的 a ready-to-use template 模板项目。 该项目包含有一个 typescript 配置的示例,并预置了两个便于定制化的配置文件。 Forge 的一些核心模块来自于上层的Electron社区(比如electron-packager),因而Electron主要维护人员(比如说Slack)提交的Electron更新也会使Forge的用户受益。
关于Forge的更多信息,请查阅electronforge.io。
安装
建议是安装成全局,这样方便使用
npm install -g electron-forge
建立项目
下面的命令在当前目录下建立一个my-project目录,里面就是我们的工程代码了,同时这里指定了使用vue模板,如果不指定的话,默认会使用ES6/7的模板
electron-forge init my-project --template=vue
速度很慢,不推荐
运行
运行下面的命令后就会启动我们的应用了,命令没有带路径,表示默认使用当前目录
electron-forge start
效果如下
打包
这里有两种形式的打包,分别在不同场景下使用
electron-forge package //只是打包成一个目录到out目录下,注意这种打包一般用于调试,并不是用于分发
electron-forge make //这个才会打出真正的分发包,放在out\make目录下
两个命令都可以使用–arch 和–platform参数来指定系统结构和平台,但是需要注意的是只能打包你当前机器的平台包,比如你用OSX是无法打出windows平台安装包的;这两个参数不填写的话,默认和当前系统一致
另外,make是用squirrel打出来的包,安装后是放在%localappdata%下的
electron-builder
Electron Builder 是一个完备的Electron应用打包和分发解决方案,它致力于软件开发的集成体验。 electron-builder 出于简化的目的添加了一个依赖项,可以在内部管理所有更多的要求。
electron-builder 会将Electron维护者使用的模块和功能(例如: auto-updater) 替换为自定义的. Electron Builder打包的应用内组件的集成度会更高,同时与主流的Electron应用共同点也就更少了。
关于Electron Builder的更多信息,请查阅代码仓库。
electron-react-boilerplate
如果你不希望任何工具,而想要简单地从一个模板开始构建,CT Lin的 electron-react-boilerplate 可能值得一看。 它在社区中很受欢迎,并在内部使用了 electron-builder。
其它工具和模板
“Awesome Electron” 列表涵盖了众多可供选择的工具和模板。 如果您发现列表的长度令人畏惧,请不要忘记,您也可以在开发过程中逐渐添加工具。