微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何为 escpos 协议构建 angular 和 node js?

如何解决如何为 escpos 协议构建 angular 和 node js?

对不起我的英语。 我有角度前端,节点 js 服务器,热敏打印机。 我必须使用 esc/pos 协议从 angular 与热敏打印机通信,所以我制作了一个 node js 服务器。 现在我从 angular 向节点发出请求,然后节点与打印机通信(使用 ip 和端口)。 如何一起构建角度和节点?所以当我部署它时,我不必每次都启动节点服务器? 谢谢

解决方法

我想您是指在本地运行它。有几种方法:

  1. 例如,在 Windows 10 中,您可以像窗口服务一样运行 nodejs“服务器”。所以它在启动时运行。 (看看这个 repo Forever tool
  2. 您可以使用电子 js:首先生成您的 Angular 项目构建:ng b --prod:这将生成带有 index.html 和必要脚本的 dist 文件夹。现在,您可以从节点 js 脚本中提供此静态文件夹:例如,在 Express js 的帮助下。

var express = require("express");

var app = express();


app.use(express.static("/dist/myAngularProject"));

//Add your escpos logic,ecc..

app.listen(3001,function () {
  console.log("Server listening on port 3001!");
});

现在,如果您运行命令:node index.js,您应该会看到您的 Angular 应用程序。下一步非常简单:启动一个新的 Electron js 应用程序,并在您的 main.js 中加载您的服务器 URL:

const { app,BrowserWindow } = require('electron')
require("./server/myNodeJsServerIndex.js")



let win

function createWindow () {
  
  win = new BrowserWindow({
    width: 950,height: 750,fullscreen: true,webPreferences: {
      nodeIntegration: true,devTools:false
    }
  })


  //my node js server
  win.loadURL(`http://localhost:3001`);



  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()
  }
})

使用 require("./server/myNodeJsServerIndex.js")win.loadURL(http://localhost:3001);,这意味着每次启动电子客户端时,您的 nodejs 服务器都会自动启动。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。