问题
最近要上旧版本浏览器,我们uniapp用的是vue3 cli+ts+es6。
报错 ?. 和 flatMap 、 import.meta 绞尽脑汁如何es6转es5。
所有的es6转es5方案,如legacyPlugin、babel、polyfill等都不起作用。
官方又说自带es6转es5,又跑去下载老版本的hbuilderX,搞这搞那,没有任何作用,非常抓狂。
解决
最后是因为uniapp把legacyPlugin给封装进去了
plugins: [
uni({
viteLegacyOptions: {
targets: ['Chrome > 70']
}
})
],
问题解决。
心态崩了
关于viteLegacyOptions这个选项官方文档没有任何提及,这方法还是突发奇想,点到uni里面看抛出的ts才看到并尝试的,并且刚巧build了一版发到服务器上试、因为这个编译只在build时生效,特么开发模式下该报错还是报错,这让我怎么测试、心态都崩了。。
解决DEBUG全靠猜,唉~
谢谢楼主, 找了一万种解决办法, 就这个方法奏效, 终于可以在低版本安卓下不白屏了
让这个问题心态搞崩好几个月
也会debug时候模拟器白屏吧 是怎么解决的