【问题标题】:How to run nestjs with electron?如何用电子运行nestjs?
【发布时间】:2021-11-28 11:22:12
【问题描述】:
我正在尝试使用 electronjs 制作桌面应用程序。由于nestjs使后端开发变得超级简单,我想将它与electron一起使用。
最初我尝试运行命令
电子。 && 嵌套开始
这使得嵌套过程只有在电子应用关闭后才开始。
我在 youtube 上只找到了一个视频,在其他地方没有其他合适的解决方案。
链接:https://www.youtube.com/watch?v=vWpybfpyzPI
我很难理解它。
我也想知道如果我能够实现视频中已经实现的目标,electron和nestjs之间的顺畅通信的可能性。这对我来说似乎不是一个标准的东西。
【问题讨论】:
标签:
electron
nestjs
integration
【解决方案1】:
这并不容易,但也不是不可能......
我将假设您将创建一些 Angular 前端应用程序以及本地 nestjs api 服务器......然后我们可以通过以下技巧做到这一点......
-
使用xplat创建电子+角度应用程序
-
创建您的本地 nestjs 应用程序。
-
对于生产版本,请执行以下技巧..
a) 在 electron index.ts 文件中添加以下内容可能是在创建窗口函数中。
如果(!服务){
const { fork } = require('child_process');
const ps = fork(${__dirname}/main.js);
}
a.1) 首先构建您的 Web 应用程序。
b)构建你的nestjs应用程序,然后将nestjs node_modules加上nestjs dist复制到你的angular dist中。
c) 使用 electron_builder 生成你的包并确保 electron builder 将复制 node_modules .. 默认情况下它会忽略它,但我们可以将一些参数传递给 electron builder... 通过使用 package.json
像下面这样...
“文件”:[
"/*",
{
“来自”:“node_modules”,
"to": "node_modules",
"过滤器": ["/*"]
}
],
注意:对于服务我们不需要在电子中运行nestjs,我们只需要单独服务nestjs...