今天在开发过程中,运维人员报告说页面打开后一片空白,无法进入系统。经过排查发现是我的print-template-designer报错了,报了一个 globalThis is not defined 的错误。
其实之前好像也遇到过类似的错误,一般是因为浏览器版本太低了。
我上了 Can I Use 网站查了一下,发现在 Chrome 70 版本之前是不支持 globalThis 的。
那么解决方法就有两个:
- 让客户升级浏览器版本
- 前端升级一下,兼容低版本
最后我们还是建议客户先升级浏览器版本,如果是 Windows 7 系统,使用最新的 108 版本就可以了。(顺便说一下,今年 Chrome 停止支持 Windows 7,108 应该是最后一个版本)
另外,代码层面要怎么解决呢?只需要在 head 标签中添加下面的代码即可。
<head>
<script>
this.globalThis || (this.globalThis = this)
</script>
</head>
还有一个问题是要了解一下 globalThis 是什么: