【无标题】

最近刚开始用 electron 做一个桌面小应用,里面用到了 net-ping 等包

然后就自然就发生了electron的版本和net-ping的 NODE_MODULE_VERSION 不一致的情况。

因为使用

npm rebuild --runtime=electron --target=16.0.0 --disturl=https://atom.io/download/atom-shell --abi=93

之后发现找不到包的情况,以为编译有问题

结果从rebuild 一直到  node-gyp,从nodejs 各个版本的不断卸载、安装。到 electron各个版本的卸载安装,还专门看了其版本匹配:

electron-releases - npm (npmjs.com)

Previous Releases | Node.js (nodejs.org)

妄图找到匹配的版本。。。

最后发现是引用包时候出的问题

nodejs的常用两种引用包的方法:

1.这种是将net-ping 包 用ping 来取代:

var ping = require ("net-ping");

2.而这种是从 electron 里面取出 app, Menu和 Tray ,有点像python 的 类似 from math import pi  

 const { app, Menu, Tray } = electron;

所以不管怎样还是要从最简单的地方开始查起,避免轻易怀疑是复杂性问题。

上一篇:阿里云服务器ping不通github或其他域名


下一篇:【Qt6网络抓包工具项目实战】2.7ICMP协议介绍