webpack打包过程中删掉了window

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

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

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

阅读 3.8k
2 个回答

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

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

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

const getWindow = () => window;
let aid = getWindow().aid || '123456';
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题