webpack打包过程中删掉了window

guhuiweb
  • 385

比如代码是
let aid = window.aid || '123456';

压缩后就变成了
let aid = aid || '123456';

怎么才可以不把window去掉啊,活生生报错aid is not defined

回复
阅读 2.9k
2 个回答

删掉你前缀的不是webpack,应该你webpack中的UglifyJsPlugin插件开启了压缩吧。。。

然后,压缩工具是有一套语法分析的,并不会无缘无故的删掉的window,而且变量的作用域是向上继承的。我更愿意相信是你前置aid没有声明成功。

如果你实在绕不过,就这样做

const getWindow = () => window;
let aid = getWindow().aid || '123456';
宣传栏