【发布时间】:2018-02-28 17:45:53
【问题描述】:
我在这里看到了一个相当基本的 webpack 配置。
module.exports = {
entry: "./app/app.js",
output: {
filename: "public/bundle.js"
},
module: {
loaders: [
{
exclude: /node_modules/,
include: /app/,
loader: 'babel-loader'
}
]
},
// Without this the console says all errors are coming from just coming from bundle.js
devtool: "eval-source-map"
};
但是我试图让 webpack 将 jQuery 导出为全局(因为我正在使用的一些包寻找 jQuery 全局)。
文档声明 here 你可以这样做:
new webpack.ProvidePlugin({
$: 'jquery',
jQuery: 'jquery'
})
但是,要将该块添加到我的配置中,我必须在上面的 webpack.config.js 中包含 webpack。当我添加 const webpack = require("webpack"); 时,似乎 webpack 开始尝试捆绑 webpack。这会向控制台输出大量错误。为什么会发生这种情况,webpack 不应该尝试在 webpack.config.js 中捆绑依赖项吗?
编辑:
看起来 webpack 一直在捆绑我的配置文件,尽管在我将 webpack 包含在文件中之前它从来都不是问题。下面显示的输出显示了与上述配置捆绑在一起的配置文件。
Hash: cba679dd5938953cc8b8
Version: webpack 3.11.0
Time: 1576ms
Asset Size Chunks Chunk Names
public/bundle.js 4.37 MB 0 [emitted] [big] main
[1] ./app/modules/<filename>.js 1.77 kB {0} [built]
[3] multi ./app/app.js ./webpack.config.js 40 bytes {0} [built]
[4] ./app/app.js 174 bytes {0} [built]
[5] ./app/js/<filename>.js 2.49 kB {0} [built]
[6] ./app/js/<filename>.js 4.96 kB {0} [built]
[13] ./webpack.config.js 664 bytes {0} [built]
+ 9 hidden modules
上面标记为[3] 的行是我的问题,尽管我的配置似乎根本没有告诉 webpack 这样做。
【问题讨论】: