Webpack试图捆绑自己?

时间:2018-02-28 17:45:53

标签: webpack webpack-2

我在这里看到了一个相当基本的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执行此操作。

1 个答案:

答案 0 :(得分:0)

这里的问题是我使用命令npx webpack webpack.config.js运行webpack。正确的命令只是npx webpack,添加webpack.config.js会将其添加为另一个入口点。