https://github.com/zserge/lorca
https://github.com/shen100/mili
https://github.com/miguelmota/golang-for-nodejs-developers
一个非常小的库,用于在Go中构建现代HTML5桌面应用程序。 它使用Chrome浏览器作为UI层。 与Electron不同,它不会将Chrome捆绑到应用程序包中,而是重用已安装的那个。 Lorca建立了与浏览器窗口的连接,允许从UI调用Go代码并以无缝方式从Go操作UI。
这个怎么运作
在引擎盖下,Lorca使用Chrome DevTools协议来检测Chrome实例。 首先,Lorca尝试找到已安装的Chrome,启动绑定到临时端口的远程调试实例,并从stderr读取实际的WebSocket端点。 然后Lorca打开与WebSocket服务器的新客户端连接,并通过WebSocket发送Chrome DevTools协议方法的JSON消息来监控Chrome。 JavaScript函数在Chrome中进行评估,而Go函数实际上在Go运行时运行,返回的值将发送到Chrome。
https://www.jianshu.com/p/f8b0ef800636?utm_campaign=maleskine
https://www.electronjs.org/docs/latest
https://github.com/electron/electron
Electron是一个可以使用 JavaScript,HTML 和 CSS 构建跨平台桌面应用程序的开源框架。
本文主要分享一下采用vue + electron开发桌面程序的搭建过程。
vue –version
如果没有装vue-cli可以通过下面的命令安装:
npm install -g @vue/cli
如果是vue-cli还是2.x可以先卸载2.x然后装3.x
npm uninstall vue-cli -g
npm install -g @vue/cli
vue create electron-helloworld
引入vue-cli-plugin-electron-builder
cd electron-helloworld
vue add electron-builder
这一步需要拉取electron-vX.Y.Z-win32-x64.zip,过程非常漫长。
npm run electron:serve
https://www.cnblogs.com/itqn/p/electron_helloworld.html
nodejs调用go语言基本上有如下的几个方法:
1.nodejs调用C/C++,然后用C/C++调用go语言
其实就是js使用addon调用C++,c++再调用go语言编译出的库。(用C++做一次套壳)
参考博客:https://www.jianshu.com/p/a3be0d206d4c
2.nodejs调用go语言编译出的动态链接库
使用 ref-napi、ref-array-napi、ffi-napi、ref-struct-napi几个库。
https://blog.csdn.net/xiaox0616/article/details/119676757