如何使用Electron运行Aurelia应用程序?

时间:2017-06-07 23:38:39

标签: javascript html electron aurelia

我使用Aurelia CLI创建了一个使用Aurelia确认运行的默认Hello World应用程序。

Aurelia在根目录中生成了一个index.html:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Aurelia</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
  </head>

  <body aurelia-app="main">
    <script src="scripts/vendor-bundle.js" data-main="aurelia-bootstrapper"></script>
  </body>
</html>

从那里我简单地创建了一个基于Electron QuickStart main.js的main.js并使用npm install --save-dev安装了Electron。我将main.js设置为项目的驱动程序并启动了Electron。

应用程序索引已打开,但Electron只是空白。让Aurelia与Electron合作的正确步骤是什么?

我使用Electron创建了一些基本的JavaScript项目,但我似乎无法运行其他Web应用程序。与Angular相同。

Node一直在尖叫:

(node:5372) Warning: a promise was rejected with a non-error: [object String]
process.on @ internal/process/warning.js:21

和PLATFORM.Loader的问题:

Unhandled rejection No PLATFORM.Loader is defined and there is neither a System API (ES6) or a Require API (AMD) globally available to load your app.
printWarning @ vendor-bundle.js:1386

2 个答案:

答案 0 :(得分:1)

您可以尝试将html-webpack-plugin更新为最新版本吗?我认为这是一个webpack配置问题。

答案 1 :(得分:0)

我刚遇到这个问题,并遵循https://github.com/electron/electron/issues/303中的注释对我有所帮助。注意:“ require”对我来说是未定义的,因此我不得不将其更改为

window.nodeRequire = window.require || {};

我不知道这对我使用该应用程序的节点API有什么影响,但是我确实在运行带有NodeJS和Electron 3.0.0 beta-1的“ Hello World” Aurelia应用程序。

更新:我相信缺少window.require是因为在main.js中,我有webPreferences:false。删除此限制将取消此限制。