配置了 babel-plugin-transform-es3-member-expression-literals 和 babel-plugin-transform-es3-property-literals 的确可以原生 webpack 上的代码 export.default 改为 export['default']
但是例如 es6 class等关键字都编译出 exports.default( 开发阶段没有混淆 ),导出 ie8 报错,还有什么插件可以避免这样的错误呢?
配置了 babel-plugin-transform-es3-member-expression-literals 和 babel-plugin-transform-es3-property-literals 的确可以原生 webpack 上的代码 export.default 改为 export['default']
但是例如 es6 class等关键字都编译出 exports.default( 开发阶段没有混淆 ),导出 ie8 报错,还有什么插件可以避免这样的错误呢?
你要兼容IE8的话,最好只用ES6的一些语法糖,像class这么高级的就不要用了
看这篇文章[《ES6部分方法点评(三):babel-preset-es2015-loose可转换且移动端兼容性较好的语法》参考下什么可以用什么不可以用。
我自己是只用ES6语法糖,在IE8下不需要任何polyfill。
3 回答1.4k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
1 回答1.3k 阅读✓ 已解决
1 回答1.3k 阅读✓ 已解决
1 回答1k 阅读✓ 已解决
1 回答826 阅读✓ 已解决
ES6是用ES5实现的,IE8不支持ES5的一大堆东西,硬是要兼容可以自行百度IE8兼容ES5,但是不建议你这么做,因为那真是一大堆兼容问题,要下载很多东西,而且记得其中有一个会造成新的无解BUG。
所以:
1、需要兼容IE8就最好不要用ES6ES5,用原生JS模拟类或者用JQ
2、不需要兼容IE8就用ES6