javascript - Electron JS,使用 Express 后端和单独的 html 前端启动应用程序

标签 javascript html node.js express electron

我有一个应用程序,它有单独的 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 脚本,它在桌面模式下启动 Electron 应用程序。它位于 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 前端打包在一起,我需要添加什么?

最佳答案

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

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

关于javascript - Electron JS,使用 Express 后端和单独的 html 前端启动应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42374989/

相关文章:

javascript - Node.js 获取生成进程的 pid

javascript - 让 WebStorm 忽略 "Choose Declaration"下拉列表的 .spec.js 文件

javascript - promise 一次性解决

html - 如何使用 css 或 javascript 让我的 SVG 在鼠标悬停时设置动画?

node.js - puppeteer page.authenticate https 代理不起作用

node.js - 灰尘 : should async calls ever be made from a template helper?

javascript - 推送函数并获取回调

javascript - MEAN.js - 登录后重定向用户 - 在本地工作,但在部署时不起作用

android - 在 Android 应用程序中,我得到的计算字体大小为 2.90909px

javascript - Bootstrap 警报在大屏幕上覆盖行时出现问题