我想要像 RequireJS 一样的功能 empty:
http://requirejs.org/docs/optimization.html#empty
我的用例是我在开发中包含 jquery-migrate
,但我想在为生产构建时排除它。
使用 IgnorePlugin
只是让它不被包含,当 require
在代码中使用它时,它会抛出一个错误(Uncaught Error: Cannot find module "jquery-migrate"
).
我希望它只返回 undefined 或类似的东西(比如 RequireJS 中的 empty:
)。我不想触及代码中的导入,只是将其配置为返回 undefined
。
编辑:使用 NormalModuleReplacementPlugin
有效,如果我将替换指向一个空文件。但是为此保留一个空文件似乎没有必要。
最佳答案
我使用 null-loader 来清空模块。 noop-loader 可用于配置中不那么笨拙的 if-else。
尝试:
rules: [{
test: /jquery-migrate/,
use: IS_DEV ? 'null-loader' : 'noop-loader'
}]
关于javascript - 从 webpack 包中排除一个模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29795782/