背景是这样的,我需要使用webpack+babel去打包项目,同时需要依赖一些新的es678语法,所以`@babel/preset-env`的`useBuiltIns`设置为`usage`,但打包后会报错`can't redefine toString`。
后来我就改为`false`,可以正常打包,但当我尝试直接引入`core-js`时报了同样的错(core-js 2和3都会报错),然后问题就定位到`core-js`的这么一段
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative })(Function.prototype, TO_STRING, function toString() { return typeof this == 'function' && this [SRC] || $toString.call( this ); }); |
那么原因应该就是小程序的`Function.prototype.toString`不允许被重新定义,控制台试了下确实是这样,那现在有什么解决方法么?可以让我自动polyfill.
解决了吗?怎么处理?
有人看到么?