Приложение Angular + Express.js в Electron не запускается - PullRequest
0 голосов
/ 03 июля 2018

Мне удалось создать приложение MEAN. Теперь я хочу, чтобы это приложение работало внутри электрона. Следующая команда работает в веб-браузере

"electron-build": "ng build && node ./bin/www"

Но когда я попробовал этот код

"electron-build": "ng build && electron . && node ./bin/www"

Сборка прошла успешно, и приложение работает в электронном режиме, но сервер не работает, и когда я вышел из электронного приложения из электронного интерфейса, я получил журнал успешных подключений в консоли.

Теперь, когда я попробовал этот код

"electron-build": "ng build && node ./bin/www && electron ."

Сервер успешно запускается, но электронное приложение не отображается.

1 Ответ

0 голосов
/ 20 октября 2018

Проблема в том, что два процесса (узел ./bin/www и электрон.) Не могут быть выполнены в одном потоке.

Вы можете сделать что-то подобное

const { app, BrowserWindow } = require('electron')

const path = require('path');

function createWindow () {
    win2 = new BrowserWindow({ width: 800, height: 600 })

    win2.loadURL(
    path.join('file://', __dirname, '/index.html')
    );    
}

app.on('ready', createWindow)

А в index.html добавьте тег с вашим server.js или app.js (файл с кодом узла / express). Как:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>Simple Mouse Control - Server</title>

        <script src="server.js"></script>

    </head>
    <body>
        Hola
    </body>
</html>

И наконец:

"electron-build": "ng build && electron ."
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...