Webpack 理解网页包:加载程序定义两次

Webpack 理解网页包:加载程序定义两次,webpack,Webpack,在GitHub上的一个样板项目中,我在一个网页配置中发现了一些我还不理解的东西 为什么在同一测试中定义了两次以下加载程序? 如果删除其中一个,则应用程序不会按预期呈现 { test: /\.css$/, include: path.resolve('./src/app'), loaders: [ 'style-loader', 'css-loader', 'postcss-loader' ] }, { test: /\.css$/,

在GitHub上的一个样板项目中,我在一个网页配置中发现了一些我还不理解的东西

为什么在同一测试中定义了两次以下加载程序? 如果删除其中一个,则应用程序不会按预期呈现

  { test: /\.css$/, include: path.resolve('./src/app'), loaders: [
       'style-loader',
       'css-loader',
       'postcss-loader'
    ]
  },
  { test: /\.css$/, exclude: path.resolve('./src/app'), loaders: [
       'style-loader',
       'css-loader'
    ]
  },

如果查看为控制器配置的
{include,exclude}
选项,第一个配置将用于您的源,第二个配置将用于所有其他源(供应商位于
节点_模块/
、全局模块、其他路径)。您可以应用相同的方法,例如,使用Babel等配置/跳过解析源

我们之所以这样做,是因为在注册表中发布的源代码已经作为包的预发布脚本的一部分进行了解析和转换,而我们的包仍在开发中

在这里,您希望只有您的源代码使用针对POSTSS的语法和表达式,而您将通过NPM分发的语法和表达式视为标准CSS。您只需要解析它们来解析依赖项并将它们转换为JS模块,而完全跳过POSTSS解析器