webpack - 有没有办法在 webpack 2 中禁用 tree-shaking?

标签 webpack webpack-2

webpack 2 中有没有办法禁用 tree-shaking,或者恢复到 webpack 1 的行为,其中导入由 babel 处理?我有一个似乎是 webpack 中的错误,但它只是随机发生(不是 100% 可重现的),我想恢复到旧的行为,看看问题是否消失。

我看到的错误是我在 node_modules 中导入模块,有时结果符号未定义。例如:

import { withRouter } from 'react-router';

'withRouter' 的值未定义,但仅在一个模块中。奇怪的是,这只发生在初始构建时,如果我进行增量构建,一切正常。

注意设置 { modules: true } for babel 不起作用 - 它只是导致 webpack 报告错误。

在了解更多信息之前,我不想将此作为错误提交。而且因为这只发生在一个大型项目中的数千个符号中,我怀疑我是否可以制作一个小的复制案例。

编辑:我创建了一个可以重现问题的极简示例:

https://github.com/viridia/webpack-miscompile

最佳答案

我找到了我试图调试的原始问题的解决方案 - 请参阅 https://github.com/webpack/webpack-dev-server/issues/876以获得完整的解释。基本上我在 webpack-dev-server 中使用了错误的回调选项。

但是,我从未发现是否有禁用摇树的选项。

关于webpack - 有没有办法在 webpack 2 中禁用 tree-shaking?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43330339/

相关文章:

Webpack 编译失败(没有任何进一步的错误信息)

angular - Webpack 迁移问题

javascript - Webpack2 不理解我的 SASS 文件中的 @import 语句(How to compile SASS with webpack2?)

javascript - 不同的babel环境配置

javascript - Webpack url-loader 重复内联图像

typescript - 如何使用 Typescript 和 Webpack 对类使用 tree-shaking?

javascript - Nuxt.js:css-loader 的问题,它从 font-family 中删除引号

javascript - 获取 node_modules 文件夹中文件的 [TS] 错误

typescript - 带有 typescript 的 VueJS 单文件组件 : Unable to find module stuff. vue

webpack - 如何将Font Awesome添加到Next.js项目