一 问题出现

H5 页面上线后,部分用户反馈页面显示空白. 经问题排查页面空白的手机主要是vivo和oppo手机且andriod系统版本较低. 测试机显示空白的版本是andriod 5.1.1 版本.本项目是在jsp页面中引入的vue

二 问题排查

  1. 在浏览器中显示正常. 不会出现空白. 通过抓包工具发现抓取的文件用浏览器也会出现空白页面的,且没有报错信息.
  2. 通过网上搜索和需求帮助, 定位到问题是由于es5 不兼容 es6, 会导致很多问题.要解决问题就要把es6的js转码成 es5的js
  3. 根据vue官网上发现vue2.0对于ie8是不支持的.就考虑到是不是由于浏览器的原因.查看出现问题的手机内嵌浏览器信息为.
    在浏览器中输入 javascript:alert(navigator.userAgent)
    会弹出
    Mozilla/5.0 (Linux;Andriod 5.1.1; vivo X7 Build/LMY47v;wv) AppleWebkit/537.36(KHTML,like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36

这些也看不懂,就直接用电脑中的ie浏览器打开出现问题的h5页面.而且发现了报错信息. 如SCRIPT1003: 缺少 ‘:’ 等信息,可以找到对应的行.

三 问题解决

通过找到的报错位置,发现可能是vue2.0中的语法在ie浏览器不能正确的解析. 可以一个一个查如何改写成es5的写法.当然这样比较麻烦,可以用转码的工具

  1. 转码方法一:
    在线转码的地址https://es6console.com/ 通过输入自己写的js 会转码为es5的js. 修改对应的报错函数.解决问题.

  2. 转码方法二:

1 首先全局安装Babel。  npm install -g babel-cli2  Babel的配置文件是.babelrc   {"presets": [],"plugins": []
}3  presets字段设定转码规则
# ES2015转码规则
$ npm install --save-dev babel-preset-es20154 我们需要将这些规则加入到.babelrc中去
{"presets": ["es2015","react","stage-2"],"plugins": []}5 转码、转码的规则:
# 转码结果输出到标准输出
$ babel test.js# 转码结果写入一个文件
# --out-file 或 -o 参数指定输出文件
$ babel a.js --out-file b.js
# 或者
$ babel a.js -o b.js# 整个目录转码
# --out-dir 或 -d 参数指定输出目录
$ babel src --out-dir lib
# 或者
$ babel src -d lib# -s 参数生成source map文件
$ babel src -d lib -s把报错的方法修改后,在ie浏览器中能够正常展示,在出问题的手机中也可以正常显示了.

本次出现的问题是vue中的函数定义的语法导致的

  1. Vue2.0 中的定义函数的写法如下:
    修改前
methods: {setType(val) {},
}

转码为es5的写法为后

methods: {setType: function setType(val) {},
}
  1. 遍历集合方法修改
    修改前:
list[0].orderList.forEach((ord) => {
});

转码为es5的写法为后

list[0].orderList.forEach(function (ord) {
});

部分安卓手机h5页面出现空白页面相关推荐

  1. 解决安卓手机H5页面input获得焦点时页面挤压或者底部上移

    在安卓手机上,如果底部有一个定位的元素 比如一个input 或者一个 footer 在正常情况下是没有问题的, 但是一旦input获得焦点,那么定位元素会被软键盘向上推,ios手机没有问题 此时解决办 ...

  2. 博客园 首页 新随笔 联系 订阅 管理 如何使用电脑上的谷歌浏览器来调试安卓手机上的移动端页面...

    本教程用的是我自己的手机三星A9,其他安卓手机方法也相同. 第一步首先你得打开手机的开发者选项,确保USB调试和通过USB验证应用程序保持打开状态,如图所示 第二步,确保你的电脑和安卓手机都已经安装了 ...

  3. Android通过Chrome Inspect调试WebView的H5 App出现空白页面的解决方法(不需要FQ)

    本文系博主原创,未经许可不得转载.如未经本人同意,私自转载或盗取资源提供下载,本人保留追究其法律责任的权利. 调试基于WebView的Hybrid App最舒服的工具当然是Chrome自带的开发者工具 ...

  4. 如何使用电脑上的谷歌浏览器来调试安卓手机上的移动端页面

    本教程用的是我自己的手机三星A9,其他安卓手机方法也相同. 第一步首先你得打开手机的开发者选项,确保USB调试和通过USB验证应用程序保持打开状态,如图所示 第二步,确保你的电脑和安卓手机都已经安装了 ...

  5. 安卓手机H5页面判断wifi还是数据

    前言 这个小事件是公司有这个需求,然我我去解决,虽然也是网上找的,也找了挺长时间,写这文章主要是让大家,碰到这个需求的时候有幸能碰到这篇文章的话会更方便一点 直接上代码,复制过去就能用 functio ...

  6. 为什么php打开网页空白的_PHP页面出现空白页面该怎么办

    以下为引用的内容: error_reporting(report_level); 以下为引用的内容: 如果参数 level 未指定,当前报错级别将被返回.下面几项是 level 可能的值:值     ...

  7. h5页面输入框在安卓手机上被键盘挡住

    h5页面输入框在安卓手机上被键盘挡住 1.弹窗的解决方法 .floatbox{position:absolute; top:50%; right:0; bottom:0; left:0; backgr ...

  8. 安卓手机键盘弹出导致h5页面错乱

    安卓手机键盘弹出导致h5页面错乱 特别是有表单的h5,点击input输入信息的时候提交的按钮.以及定位到下方的图片都会被挤上来. 解决方法如下: <div class="bg_img& ...

  9. 记录:app内嵌H5页面分享到微信后,在安卓手机打开白屏,苹果手机正常渲染的问题始末

    **背景:**app内嵌的一个个人名片页面需要分享到微信,测试环境下,分享到微信后,安卓和苹果手机都能正常渲染,生产环境苹果手机没问题,安卓手机打开分享的链接,页面一直空白. **原因分析:**单独加 ...

最新文章

  1. Handler消息机制(三):一个线程有几个Looper?如何保证?
  2. 常见的表死锁情况及解决方法
  3. 简单封装 HTTP 请求
  4. release,debug库互调用,32位,64位程序与库互调用
  5. [ASP.NET] 限制上传文件类型的两种方法(转)
  6. 360浏览器打不开网页_苹果移动端、PC端safari浏览器打不开网页的解决方案!
  7. 生成ltx文件命令_利用二次开发工具批量生成PCDMIS程序
  8. 带有.NET Core 3和Electron.NET的多平台桌面HTML编辑器
  9. hiho一下 第六十四周 Right-click Context Menu
  10. 以命令行的格式读取音频文件信息,并将读取的内容写到输出文件中
  11. android ui机制的学习笔记
  12. 如何根据相机的参数知道摄像机的内参数矩阵
  13. Rhino学习教程——1.1
  14. 2019年全国河流水系
  15. 网络编程释疑之:TCP半开连接的处理(好)
  16. matlab进行道格拉斯筛选,柯布-道格拉斯(Cobb-Douglas)生产函数模型.doc
  17. 【数据结构与算法】试卷 1(含答案)
  18. arcgis多面体数据转面_ArcGIS多面体(multipatch)解析——引
  19. 去掉电影字幕的最好方法
  20. STC51从入门到精通(汇编)~~~ 第三讲:MCS-51单片机的结构和工作原理

热门文章

  1. java springboot生成二维码图片
  2. git基础教程(20) 从版本库删除文件git rm
  3. 第十一章 Linux账户管理与ACL权限设置(下)
  4. 感恩节!感谢一路上有你!
  5. 软考成绩查询与证书领取
  6. 防勒索病毒主机加固才是良策。
  7. Curator之Recipes之选举
  8. SQL笔试经典50题及答案解析
  9. C# 查询注册表,判断本机是否安装Office2003,2007,2010,2013,2016和WPS
  10. 【协议森林】邮差与邮局 (网络协议概观)