【发布时间】:2015-11-06 11:22:46
【问题描述】:
如何配置 webpack 以忽略文件中的 amd 'define' 语句,就像我可以使用带有外部选项的 'require' 一样?
【问题讨论】:
标签: javascript requirejs require amd webpack
如何配置 webpack 以忽略文件中的 amd 'define' 语句,就像我可以使用带有外部选项的 'require' 一样?
【问题讨论】:
标签: javascript requirejs require amd webpack
官方是recommended将define设置为false,imports-loader。
loaders: [
{ test: /\.js/, loader: 'imports?define=>false'}
]
但只有在 define 以 UMD 样式调用时才有用 - 如下所示:
if (typeof define === 'function' && define.amd) {
define([], factory)
}
如果您可以更改调用 define 的代码并且没有 UMD 的 if 这对我有用:
var define = window['infor']; // keep webpack out of way
// use define from global scope (requirejs or other used loader) as needed
define('mymodule', ['dep1'], function (dep1) {
return {}
});
【讨论】:
如此处所述:https://github.com/webpack/webpack/issues/3017#issuecomment-285954512
你可以这样做:
module: {
rules: [
{ parser: { amd: false } }
]
}
【讨论】: