我想喜欢RequireJS empty:
http://requirejs.org/docs/optimization.html#empty排除模块从捆绑的WebPack
相同的功能我用例是我包括开发jquery-migrate
,但我想在生产内置排除这一点。
使用IgnorePlugin
只是使其不包含,并且当require
在代码中,它然后会引发错误(Uncaught Error: Cannot find module "jquery-migrate"
)。
我想要发生的是它只是返回undefined或类似的东西(如RequireJS中的empty:
)。 Id喜欢不要触摸代码中的导入,只需将其配置为返回undefined
即可。
编辑:使用NormalModuleReplacementPlugin
的作品,如果我指出替换为空文件。但为此只保留一个空文件似乎没有必要。
这似乎适用于我,我认为最好的答案OP的问题。没有改变代码,我仍然在代码的顶部有一个'import foo'excluded-module'',没有有趣的if(DEV)'包装器。想象一下,require('excluded-module')'也可以。 –
注意其他新手,这些装载机不包含在webpack中:'npm install --save-dev null-loader && npm install --save-dev noop-loader' – diachedelic
注2 - 在末尾添加'-loader'加载器名称。例如'null-loader' ... –