使用 Electron 与 Offline HTML5 进行离线应用

Using Electron vs. Offline HTML5 for an offline application

在查找 Electron 和 Offline 时 HTML5,我发现很难决定在项目中使用哪一个。

假设用户必须去某个网站下载 Electron 应用程序,并且必须去同一个网站才能加载离线 HTML5,两者之间的优缺点是什么用一个代替另一个?

我能想到的一些:

这真的取决于您的具体要求。以下是我想出的所有内容的列表:

  • electron 在主进程和渲染进程中都支持模块系统(即 require)。
  • electron 为您提供 OS API 的访问权限(例如 fs)。没有这么多节点模块将无法在浏览器的 JS 运行时工作(例如 ip)。
  • 使用 Electron 更新您的应用就像发送一个 http request. (or even better as described here)
  • 一个 HTML 5 离线应用程序需要一个浏览器,用户可能只是给它 IE6.
  • electron 与本机桌面环境集成(有关示例,请参阅 dialog, power-save-blocker, shell or even app
  • electron 增强了 HTML5 API 中的某些功能,例如 file API
  • electron 允许您修改底层 chromium 的默认行为。例如,您可以 intercept 所有具有 file 方案的 URL 并即时修改它们*。

简而言之,如果您希望您的应用具有良好的本机集成并具有确定性(即没有浏览器怪癖),我建议选择电子。


*electron-jade 例如使用 protocol API 即时编译所有以 .jade 结尾的文件,无需事先编译。

免责声明:我是 electron-jade.

的开发者