admin管理员组文章数量:1534217
开始学习react,简单写了一个demo,react-redux,createBrowserHistory,自己测试了一下,毕竟用一个新的工具,兼容性问题是很重要的,发现在一些低版本的安卓浏览器白屏,查了一下,原来是babel的问题
Babel默认只转换新的JavaScript句法,对于ES6的新API,如erator、Generator、Set、Maps、Proxy、Reflect、Symbol、Promise、Async,以及一些定义在全局对象上的方法(比如Object.assign)都不会转码
对于react,是引用
import React from 'react'
里面的有些方法不兼容,解决方案大致分为两种
-
使用core-js,优点是可以针对性的引入react本身不支持的属性,对于其在业务操作中需要的其他新的api,也需要针对性引入;优点是,这样生产包会小很多
1.下载core-js,即可解决
$ npm install core-js
复制代码
2.在入口js文件引入
import 'core-js/fn/Map';
import 'core-js/fn/set';
复制代码
-
使用babel-polyfill,缺点就是包本身太大;优点是可以为当前环境提供一个垫片,几乎可以兼容所有的浏览器
1.下载babel-polyfill
$ npm install --save babel-polyfill
复制代码
2.在入口js文件最上面引入
import 'babel-polyfill'
复制代码
两种方法,按照上面步骤再次执行完后运行就可以了
提示:如果只是纯粹的想解决react本身包的兼容问题,提倡使用第一种方法转载于:https://juejin.im/post/5bab81e0e51d450e85302dd0
版权声明:本文标题:react 在某些低版本安卓手机浏览器白屏解决办法 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1726871612a1087916.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论