vue-cli3.0 嵌套app的webView 安卓5.0白屏

2 篇文章 0 订阅

白屏原因

这里经过查看日志得出,白屏原因是低版本安卓因为识别不了ES6语法而抛出错误。

白屏解决方案(babel-polyfill)

package.json中

"babel-polyfill": "^6.26.0",
"es6-promise": "^4.2.8",		

main.js

import 'babel-polyfill'
import Es6Promise from 'es6-promise'
require('es6-promise').polyfill()
Es6Promise.polyfill()

babel-polyfill相关文章推荐

为什么要使用babel-polyfill?
babel-polyfill的引用和使用
babel-polyfill - Polyfill · Babel 中文网

你都照做了,但还是没有解决?

将node包下的依赖转义

当你翻到这里的时候,可能不是自己写的ES6代码导致的它白屏
a:那为什么我写的ES6代码都被babel-polyfill转义ES5了还是不行呢?
b:那只是你的代码被转义了,别人的可没有
a:别人的代码?
b:默认情况下 babel-loader 会忽略所有 node_modules 中的文件。
大白话的讲,你的node包下全都是别人的代码,他们是不会被转义的
这个时候可以就你的只有官网了,可以移步这里 vue-cli 配置参考-pileDependencies

vue.config.js中

transpileDependencies: [
    /[\\\/]node_modules[\\\/]test[\\\/]/
 ],

将名为test的依赖放入这个数组中去,大功告成

将node包下所有的依赖转义

我希望node包下的所有文件都被转义
好吧,vue.config.js中

transpileDependencies: [*],

将node包下除它以外的依赖全部转义

碰到一个棘手的问题
项目中使用到了vue-video-player 它本身依赖videojs 安装的时候也替你安装了videojs 很贴心
但是使用 transpileDependencies: [*] 的时候却不能打包 他提示让你安装videojs
这个时候千万别傻傻的去 npm i videojs 不然你会打开新世界的大门

transpileDependencies: [
	/^((?!vue-video-player).)*$/
],

照着做,将除它以外的依赖全部转义,好吗

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值