最近接手一个React项目,在IE下碰到了俩问题
IE11报错如下:
跟踪一下之后,发现是一些其他的npm包里面用到了startsWith这个方法,可以自己polyfill一下:
if (!String.prototype.startsWith) {
String.prototype.startsWith = function (search, pos) {
return this.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search
}
}
不过加prototype的方法毕竟不好,可以通过引入@babel/polyfill解决,在入口文件中引入import ‘@babel/polyfill’;
IE11问题解决后,IE10又出问题
犯了stackoverflow和github的很多帖子之后,在这个帖子里找到,发现是Object.setPrototypeOf
的问题,Object.setPrototypeOf说是支持