Открытие приложения Express (Nodejs) с помощью Electron - PullRequest
0 голосов
/ 01 мая 2020

У меня есть приложение, написанное на Express / Nodejs для бэкэнда, и angularjs (я знаю, старое) для внешнего интерфейса. Я пытаюсь открыть это приложение в окне Электрон. После поиска я нашел несколько вещей, и вот что я придумал.

main. js

const {BrowserWindow} = require('electron')
const path = require('path')
require('./server/app.js')

function start() {
  mainWindow = new BrowserWindow({
    width: 800,
    height: 600
  });

  mainWindow.loadURL(`http://127.0.0.1:8009/`);
  mainWindow.focus();

};

app.on('ready', start)

. / Server / app. js

var open = require('open');
var path = require('path')
var express = require('express');
var bodyParser = require('body-parser');
var api = require('./routes/api')();
var fs = require('fs')




var app = express();
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
app.use(express.static(__dirname + '/../client'));




app.get('/api/getPoints/:instance', api.getPoints);
app.get('/api/startDataCollection/', api.startDataCollection);
app.get('/api/getEllipses/:instance', api.getEllipses);
app.get('/api/getOutliers/:instance', api.getOutliers);
app.get('/api/getLabels/:instance', api.getLabels);
app.get('/api/getDescription/', api.getDescription);
app.post('/api/postDescription/', api.postDescription);
app.post('/api/postLabel/', api.postLabel);
app.listen(8009, function () {
  console.log('Server listening at http://127.0.0.1:8009');

});

Я запускаю сервер, требуя модуль приложения. js. Приложение работает правильно, и я могу получить к нему доступ через порт 8009, но электронное окно не появляется. Любой совет приветствуется. Спасибо.

1 Ответ

0 голосов
/ 01 мая 2020

app не является объявленной переменной. Вы можете попробовать:

setTimeout(() => start(), 3000);

Это запустит окно электронов вручную через 3 секунды после запуска узла. Если это работает, экспортируйте app из требуемого модуля.

module.exports.app = app;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...