低版 ios 手机打开 VUE 开发的 H5 页面白屏问题解决办法

2024-09-29
来源:网络整理

使用低版本iOS手机ios8、ios9、 6的内置浏览器打开VUE开发的H5页面时,有时会出现白屏。这是因为Vue项目中的es6方法和语法在这些较低版本的手机上不可用。支持,解决es6转es5

一般来说,网上说的过程比较顺利,但是看完我的,你一定会学到一些东西。我不后悔并且想再做一次。

步骤1(更平滑的解决方案)

1.执行npm-安装-

为了安全起见,安装 es6-

2.然后导入到入口js main.js

'-'(一定要放在第一行)

'es6-'

.()

('es6-').()

es6的两种引入方法之一写就可以了——

如果步骤 1 的解决方案无法解决您的白屏问题,您有何想法以及如何解决?请思考1分钟。

你一定会想是不是这两个第三方库的引入失败了,或者打包后我的代码中是否存在其他非es6语法导致的错误。

这时候你需要在手机上看到代码错误。需要使用微信小程序团队开发的.loga工具。使用起来非常简单,不会造成麻烦。请参考我的另一篇文章。

请不要谢我~~,我很低调

引入.log的代码也应该放在引入上述两个库的代码的上面,写在下面。

手机下载一个微信_微信下载手机版官方免费下载_微信下载手机版

如果手机上出现了.log的绿色按钮,说明-es6-.log已经成功引入了,因为代码已经到了最后一行代码并显示出来了,那么为什么白屏问题还没有解决呢?接下来你会做什么?当然,点击.log即可查看。错误信息

我遇到的是这两个错误:

1、:

2.in模式的使用。

显然,这两个都是打包代码中无法识别es6语法的问题。那么既然我们已经成功引入了,为什么会出现一些代码从es6转换成es5失败的问题呢?我能想到的可能是es6在里面的使用。因为es6语法并没有对里面的js进行转义,所以我很快查了一下,发现下面所有的js都没有使用es6语法,因为这些js大部分都是压缩代码。转义后,搜索代码就知道不在这里了。出了点问题,

那么问题出在哪里呢?算了,我们不谈这个了。

问题是我在html中写了一段js代码来全局解决苹果手机输入框失去焦点的问题。底部的空白js代码使用了es6反引号模板字符,这导致了第一个错误。这显然是格式错误的错误。当我评论完,打包部署后,打开手机,第一条错误信息就没有了。我松了口气,迫不及待地解决第二个问题。

那么第二个问题从何而来呢?它从哪里来?查了半天,原来使用的第三方库里居然有单词。嗯,我不会替他隐瞒的。尽管他有罪,但她的名字是vue-pdf。请记住此缺陷已在 3.9 版和 4.0 版中修复。也许3.9也修复了这个问题。我本地下载的版本是3.9。因为之前前端前辈的原因我很早之前就安装了。所以解决办法很简单。只需重新安装该库即可。 ,因为我的虚拟机无法连接外网,来回安装插件非常麻烦。

我想知道是否可以有选择地配置和传输以下包,所以我在base.js中配置了它。

红框中添加了/vue-pdf

npm run 我怀着兴奋和忐忑的心情等待着,但是npm不知道是没油了还是发动机坏了。被卡住了好久,一动不动。过了一会儿,又弹出了更类似的警告。懂的人都知道怎么介绍。如果第三方包转换超过限制肯定是不可行的,所以放弃这条路径。直接安装新版本是最可行的。我直接修改了第三方库的源码,因为只有两个地方比较容易修改(因为领导不在,我不能这样做)安装新的安装包并将其传输到虚拟机是一个非常紧迫的问题。另外,打包后的代码和源码有时差别很大,所以需要对比前后的代码。

下图是源码和打包后的代码。当然,我修改了一下,改成了var。

请注意 var h=r。原包装后为h=r。好了,说了这么多,我只是说说我解决问题的思路过程。总之,还是一句话。将 es6 转换为 es5。输入src代码,需要转换,html和第三方插件库中不允许使用es6语法。 。就这样

分享