WebPack 3从捆绑包中排除目录的正确方法



我正在寻找正确的方法来从Webpack捆绑包中排除特定文件夹。

我的配置看起来像这样:

const path = require('path');
const config = {
  entry: [
    './client',
  ],
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: 'bundle.js',
  },
  devtool: 'source-map',
  resolve: {
    extensions: ['.js', '.jsx'],
  },
  module: {
    rules: [
      {
        test: /./,
        exclude: /src/,
      },
    ],
  },
  plugins: [],
};
module.exports = config;

为了了解我的理解,此配置应排除/src/Directory,而是WebPack不断将文件添加到此目录中的捆绑包中,因为测试将匹配 ainy ,并且排除将影响SRC中的任何内容目录。还是我错过了什么?

这就是我解决它的方式(如果有人遇到相同问题(

使用此代码,我将位于/src/server/*

的捆绑包中排除了所有文件
  externals: [
    function excludeDir(context, request, callback) {
      if (/.src/server./.test(path.resolve(context, request))) {
        return callback(null, 'commonjs');
      }
      return callback();
    },
  ],

最新更新