【问题标题】:Electron JS, start application with Express backend and with separate html frontElectron JS,使用 Express 后端和单独的 html 前端启动应用程序
【发布时间】:2017-07-11 12:40:52
【问题描述】:

我有一个应用程序,它有独立的 ExpressJS 后端和独立的 HTML 前端。

我的 ExpressJS 后端位于root/scripts/server.js

我的 HTML 前端位于 root/index.html。这个前端使用了javascript逻辑,由webpack生成,并且可以正常工作。

为了使这个项目正常运行,我首先使用以下命令启动我的 ExpressJS 后端:

babel-node ./scripts/server.js --presets es2015,stage-0

然后我打开我的index.html,一切正常。

现在我想使用 ElectronJS 将后端和前端打包到一个桌面应用程序中。

我的项目有main.js 脚​​本,它以桌面模式启动电子应用程序。它位于root/main.js。它有以下代码:

const electron = require('electron')
const app = electron.app
const BrowserWindow = electron.BrowserWindow

const path = require('path')
const url = require('url')

let mainWindow

function createWindow () {
  mainWindow = new BrowserWindow({
      width: 800, 
      height: 600,
      autoHideMenuBar: true,
      useContentSize: true,
      resizable: false
  })

  mainWindow.loadURL(url.format({
    pathname: path.join(__dirname, 'index.html'),
    protocol: 'file:',
    slashes: true
  }))

  mainWindow.webContents.openDevTools()

  mainWindow.on('closed', function () {
     mainWindow = null
   })
}

app.on('ready', createWindow)

app.on('window-all-closed', function () {
  if (process.platform !== 'darwin') {
    app.quit()
  }
})

app.on('activate', function () {
   if (mainWindow === null) {
     createWindow()
   }
})

此脚本仅启动我的 HTML 前端。为了将 Express 后端与 HTML 前端打包,我需要添加什么?

【问题讨论】:

标签: javascript html node.js express electron


【解决方案1】:

尝试在 main.js 中添加类似这样的内容:

const server = require('./scripts/server');

【讨论】:

    猜你喜欢
    • 2018-11-22
    • 2019-03-11
    • 2017-11-22
    • 1970-01-01
    • 2020-12-21
    • 1970-01-01
    • 1970-01-01
    • 2020-03-13
    • 2020-08-27
    相关资源
    最近更新 更多