目录
前言
最近重构electron项目工程,因为electron工程是跨平台的,所以一套代码能够支持windows,mac OS,linux三大系统,需要注意的就是代码细节上的一些兼容性问题。这也是我们选择electron方案不得不面临的问题。
正文
平台兼容性issue是electron中常见的问题之一,比如这次修改屏幕分享和窗口管理部分的代码时就遇到了一个这样的问题。
代码的重构工作是在mac系统上完成的,通过单元测试验证后,自己就将代码提交了。
这个时候从windows开发本上同步最新的代码,然后编译运行,验证重构后的代码在windows上的表现,看看是否存在兼容性问题。
果然,不出意料。
一运行就报错了。
哎,跨平台的好处就是需要处理兼容细节(缺点)。
因为重构的代码改动比较大,自己一时间不知道问题出在了哪里。不过还好,通过报错日志圈定了大致的范围,应该是screen模块相关的内容。
报错内容如下图所示: