index.js
内容如下:
const bar = () => 11111
function foo(obj) {
const a = 22222
return bar(obj);
}
foo()
webpack.config.js 只设置了 mode:'production'
,package.json 没有设置 sideEffects: false
。
按理说,上面这段代码执行的结果没有被用到,应该属于 dead-code,会被 tree-shaking 掉,但是 foo 不是纯函数,具有副作用,所以又不会被 tree-shaking 掉。但是在我查看 bundle 文件的时候,发现确实找不到 foo 函数了(检索 11111 和 22222 没有结果),这是为什么呢?