技术栈
1 | react+dva+roadhog+antd |
场景
原来开发公司只要求兼容 chrome 即可,所以 ie 的兼容性一直没注意,突然在 ie 上查看,竟然是空白,显示不了。
解决方法
安装setprototypeof
,
1 | npm install --save setprototypeof |
然后在入口文件中设置
1 | Object.setPrototypeOf = require("setprototypeof"); |
在此之前做的工作
上面的解决方案是做了之后,直接解决了问题。但是在此之前,还做了一些工作,如果你上面的方法没解决,可以按照下面的路线做一下。
添加babel/polyfill
1 | npm install --save @babel/polyfill |
然后在入口文件的第一行引入
1 | import "@babel/polyfill"; |
有的人这样就解决了,但是我的没有解决。
browserslist
这个插件可以配置不同的组件需要兼容的浏览器,react 的各个组件会根据它的配置生成对应的兼容代码,具体可查看官网的介绍。
1 | npm i browserslist |
然后在 package.json 中配置
1 | "browserslist": [ |
查看支持的浏览器列表:
1 | npx browserslist |
执行后,会列举出所有支持的浏览器列表