免费试用

中文化、本土化、云端化的在线跨平台软件开发工具,支持APP、电脑端、小程序、IOS免签等等

前后端合并打包到一个exe

在本教程中,我们将学习如何将前端和后端应用程序合并并打包成一个单独的可执行文件(EXE)。这对于创建独立的桌面应用程序非常有用。我们将分别使用 Electron 作为前端框架和 Node.js 作为后端。

前提条件:

1. 确保已经安装了 Node.js 和 NPM(Node包管理器)。

2. 知识储备:具备一定的HTML、CSS、JavaScript以及Node.js知识。

步骤1:创建并初始化项目

1. 打开终端或命令提示符,输入以下命令创建一个名为`my-app`的目录并进入该目录:

```

mkdir my-app && cd my-app

```

2. 使用以下命令初始化一个新的Node.js项目:

```

npm init -y

```

步骤2:安装依赖项

1. 使用以下命令安装 Electron:

```

npm install electron --save-dev

```

步骤3:创建前端和后端文件

1. 在项目根目录中创建以下文件:

- `index.html`(前端主页面)

- `main.css`(前端样式表)

- `renderer.js`(前端 JavaScript 代码)

- `backend.js`(后端 Node.js 代码)

- `main.js`(Electron 主进程文件)

2. 在`index.html`文件中添加以下内容:

```

My App

Hello, World!

```

3. 在`main.css`文件中添加一些样式(可自定义):

```

body {

font-family: Arial, sans-serif;

}

```

4. 在`renderer.js`文件中编写前端 JavaScript 代码,例如添加一个事件监听器:

```

document.getElementById('btn').addEventListener('click', () => {

alert('Button clicked');

});

```

5. 在`backend.js`文件中编写后端 Node.js 代码,例如创建一个简单的HTTP服务器:

```

const http = require('http');

const server = http.createServer((req, res) => {

res.writeHead(200, {'Content-Type': 'text/plain'});

res.end('Hello from backend\n');

});

server.listen(3000, () => {

console.log('Server running at http://localhost:3000/');

});

```

6. 在`main.js`文件中编写 Electron 主进程代码,以创建一个Electron窗口并加载前端页面:

```

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

const path = require('path');

const url = require('url');

let win;

function createWindow() {

win = new BrowserWindow({width: 800, height: 600});

win.loadURL(url.format({

pathname: path.join(__dirname, 'index.html'),

protocol: 'file:',

slashes: true

}));

win.on('closed', () => {

win = null;

});

}

app.on('ready', createWindow);

app.on('window-all-closed', () => {

if (process.platform !== 'darwin') {

app.quit();

}

});

app.on('activate', () => {

if (win === null) {

createWindow();

}

});

```

7. 修改`package.json`文件,将`main`字段的值更改为`"./main.js"`,并在`scripts`字段下添加一个新脚本`"start"`,如下所示:

```

{

"name": "my-app",

"version": "1.0.0",

"description": "",

"main": "./main.js",

"scripts": {

"start": "electron .",

"test": "echo \"Error: no test specified\" && exit 1"

},

"keywords": [],

"author": "",

"license": "ISC",

"devDependencies": {

"electron": "^13.1.9"

}

}

```

步骤4:运行项目

在终端或命令提示符中输入以下命令启动项目:

```

npm start

```

这将打开一个Electron窗口并显示前端内容。后端服务器将在后台运行。

步骤5:将应用程序打包成一个EXE文件

为此,我们需要安装electron-packager:

```

npm install electron-packager --save-dev

```

接着,在`package.json`文件的`scripts`字段下添加一个新脚本`"build"`,如下所示:

```

"scripts": {

"start": "electron .",

"build": "electron-packager . my-app --platform=win32 --arch=x64 --out=dist --overwrite --icon=app.ico",

"test": "echo \"Error: no test specified\" && exit 1"

},

```

运行以下命令将应用程序打包成一个EXE文件:

```

npm run build

```

构建成功后,可以在项目根目录下的`dist`文件夹中找到生成的EXE文件。

现在您已经成功将前端和后端合并并打包成了一个独立的EXE文件!稍微调整即可适应不同的项目需求。


相关知识:
xls封装exe
文章标题:将Excel文件封装为可执行程序(EXE):原理与详细教程导语:Excel是一个功能强大的电子表格软件,但有时您可能希望将其封装为一个独立的可执行程序,这样无需安装Excel也能运行。在本篇文章中,我们将详细介绍将Excel(xls)文件封装为可
2023-06-14
vs2010生成单个exe文件
在使用Visual Studio 2010进行软件开发时,生成单个可执行文件(EXE)是一个很实用的需求。通常,如果在Visual Studio中创建一个项目,并通过编译、链接等过程生成一个.exe文件,程序运行时可能还需要伴随其他的依赖文件,如动态链接库
2023-06-14
unity3d打包exe步骤
Unity3D 是一个非常强大的游戏开发引擎,它可以让开发者轻松地制作各种类型的游戏,并将这些游戏导出到多种平台。在 PC 平台上,一个常见的需求是将游戏打包成一个独立的 EXE 文件,以便于发行和安装。本文将详细介绍如何使用 Unity3D 来实现这个过
2023-06-14
qt如何编译生成exe
Qt是一个跨平台的C++应用框架,用于开发GUI应用程序。在本教程中,我们将讲解如何使用Qt编译生成一个Windows平台下的exe文件。这个过程分为两部分:编译Qt项目,然后生成exe可执行文件。在开始本教程前,请确保你已经安装了Qt及其相应的开发环境。
2023-06-14
python生成exe窗口程序
在本教程中,你将学习如何将一个基本的 Python 脚本转换成一个可执行的 Windows 程序(.exe文件)。这使得没有 Python 环境的用户也能运行你的程序。这里我们会使用一个流行的Python库 `pyInstaller`来完成这个任务。一、创
2023-06-14
labview生成exe后报错
LabVIEW是由美国国家仪器(National Instruments,简称NI)公司研发的一款图形化编程开发工具。在LabVIEW中,很多人会将自己编写的程序生成为独立的exe文件,以方便执行和发布。但是在生成exe文件之后,可能会遇到报错的问题。本文
2023-06-14