Open yaoningvital opened 5 years ago
今天在做项目时,打包的时候,终端提示:
@babel/polyfill is deprecated...
查了一下,@babel/polyfill 的官网提示如下:
As of Babel 7.4.0, this package has been deprecated in favor of directly including core-js/stable
(to polyfill ECMAScript features) and regenerator-runtime/runtime
(needed to use transpiled generator functions):
import "core-js/stable";
import "regenerator-runtime/runtime";
于是,将项目入口文件顶部的
import '@babel/polyfill'
替换为:
import "core-js/stable";
import "regenerator-runtime/runtime";
然后,就没有@babel/polyfill is deprecated...
的警告了。
同时,还解决了IE兼容性的问题。原本项目在IE下会有报错,改为上面的引用之后,在IE下也不报错了。
用 create-react-app 搭建的脚手架创建的一个 react 应用,在项目中需要做 ie 浏览器的兼容。尝试了以下办法。
1. 当前插件的版本
2. 尝试的方法
2.1 babel-polyfill
参考:https://babeljs.io/docs/en/6.26.3/babel-polyfill
1、安装
2、导入
在入口文件
src\index.js
中最顶部导入:3、兼容性结果
ie11 :支持 ie10 :支持 ie9 :不支持
2.2 @babel/polyfill
参考:https://babeljs.io/docs/en/babel-polyfill
1、安装
2、导入
在入口文件
src\index.js
中最顶部导入:3、兼容性结果
ie11 :支持 ie10 :支持 ie9 :不支持
2.3 react-app-polyfill
参考:https://facebook.github.io/create-react-app/docs/supported-browsers-features
1、安装
2、导入
For IE9:
For IE11:
3、兼容性结果
ie11 :不支持 ie10 :不支持 ie9 :不支持
所以,综上,选择了
@babel/polyfill
。