Как передать аргументы UI в Electron, используя Flask? - PullRequest
0 голосов
/ 02 октября 2018

Я использую Flask для создания веб-приложения и хочу создать для него настольное приложение.Теперь во Flask я могу просто передать список вместе с HTML-файлом в функции render_template

return render_template('index.html', someList = someList)

и затем использовать его в HTML-файле следующим образом:

{% for i in someList %}
  #doSomething
{% endfor %}

Может кто-нибудь сказать мнеЭлектронный эквивалент для этого?

1 Ответ

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

Я предлагаю вам использовать электронное приложение в качестве пользовательского интерфейса для вашего приложения для колб.Это будет означать, что вы запускаете сервер колб, используя электрон, а затем переходите к URL-адресу в электронном интерфейсе.Вот пример того, как это сделать:

app.on('ready', function() {
  //call python?
  var subpy = require('child_process').spawn('python', ['./hello.py']);

  var rq = require('request-promise');
  var mainAddr = 'http://localhost:5000';

  var openWindow = function(){
    // Create the browser window.
    mainWindow = new BrowserWindow({width: 800, height: 600});
    // and load the index.html of the app.
    // mainWindow.loadURL('file://' + __dirname + '/index.html');
    mainWindow.loadURL('http://localhost:5000');
    // Open the devtools.
    mainWindow.webContents.openDevTools();
    // Emitted when the window is closed.
    mainWindow.on('closed', function() {
      // Dereference the window object, usually you would store windows
      // in an array if your app supports multi windows, this is the time
      // when you should delete the corresponding element.
      mainWindow = null;
      // kill python
      subpy.kill('SIGINT');
    });
  };

Полный проект можно найти на github: https://github.com/fyears/electron-python-example

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