问题摘要描述
使用vue3新建的项目在低版本ios浏览器中显示白屏
开发环境
MacBook Air(M1, 2020)
MacOS Monterey V12.2.1
芯片: Apple M1
项目创建方式
- [x] HbuilderX 3.2.12
- [x] vite脚手架,依赖"@dcloudio/uni-app": "3.0.0-alpha-3050320220727002"
以上均复现出此问题。
测试机型
- [x] iPhone8 (IOS 11.1) ,以下简称机型A
- [x] iPhone8 Plus (IOS 14.7) ,以下简称机型B
- [x] iPhone13(IOS 15.6), 以下简称机型C
- [x] 某红米手机(具体信息不详),以下简称机型D
复现过程
1.默认模板新建项目
2.在manifast.json中将Vue版本改为3
<img src="https://qiniu.buaihechengzizhi.com/img/image-20220811101607741.png" alt="image-20220811101607741" style="zoom:50%;" />
3. 运行项目到浏览器
4.复制局域网链接到测试机型
分别在微信浏览器和各自的默认浏览器中打开。
5. 统计测试结果
机型 | 微信浏览器 | 手机默认浏览器 |
---|---|---|
iPhone8 (IOS 11.1) | 白屏,可以显示manifast中配置的标题 | 白屏,可以显示manifast中配置的标题 |
iPhone8 Plus (IOS 14.7) | 显示正常 | 显示正常 |
iPhone13(IOS 15.6) | 显示正常 | 显示正常 |
某红米手机 | 显示正常 | 显示正常 |
6.使用苹果的safari联调
Apple对于登录同一个apple id的电脑和手机提供远程调试手段,经测试发现:
对于机型A,可以显示出模板骨架(即index.html)中的内容,但中间DOM树是空的,所以判断为JavaScript根本没有得到执行,已排除是否禁用了js脚本的问题。
以上为通过HbuilderX复现的步骤,vite脚手架复现则同理拉取模板仓库即可。
其他补充
已测试在把Vue版本更改为2后,所有机型都表现正常。
因在官方文档上标注vue3的兼容性为IOS >= 10,故有此疑问。
期望结果
- 告知问题出现原因
- 提供解决方案/是否能解决