1. 空白问题
因为缺少polyfill
在public/index.html 中引入如下js
<script src="https://cdnjs.cloudflare.com/ajax/libs/es5-shim/4.5.7/es5-shim.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/es5-shim/4.5.7/es5-sham.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/json3/3.3.2/json3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/es6-shim/0.34.2/es6-shim.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/es6-shim/0.34.2/es6-sham.min.js"></script>
-----以上方案可行
备注:安装 npm install '@babel/polyfill' 并 import '@babel/polyfill' 会在import行中提示 无法找到'@types/babel__polyfill'的声明文件(并未找到解决方案)
2. 样式错乱问题
package.json文件中 browserslist 表示兼容到浏览器什么版本
npx browserslist 可以查看项目支持的浏览器版本信息
ios8系统的 safari版本是ios8
修改如下
"browserslist": [
"since 2014"
]
可以支持到 2014年的所有浏览器
为了支持 safari 8
修改如下,增加"safari >= 8",只对safari做特殊处理
"browserslist": [
">0.2%",
"not dead",
"safari >= 8",
"not ie <= 9",
"not op_mini all"
]
不能写 "not safari < 8"
因为其他条件的限制,只允许兼容到 safari 10.1
safari 12
safari 11.1
safari 10.1
----------------------------
https://www.jianshu.com/p/bd9cb7861b85 browserslist 目标浏览器配置表