Webpack 2: 迁移 preLoaders 和 postLoaders

23

我已经安装了 webpack@2.1.0-beta.27。以前,我使用的是 webpack@2.1.0-beta.22。在我的配置文件中,我正在使用 preLoaderspostLoaders

preLoaders: [
    {
      test: /\.ts$/,
      loader: 'string-replace-loader',
      query: {
        search: '(System|SystemJS)(.*[\\n\\r]\\s*\\.|\\.)import\\((.+)\\)',
        replace: '$1.import($3).then(mod => (mod.__esModule && mod.default) ? mod.default : mod)',
        flags: 'g'
      },
      include: [helpers.root('src')]
    },

  ],
  loaders: [...],
  postLoaders: [
    {
      test: /\.js$/,
      loader: 'string-replace-loader',
      query: {
        search: 'var sourceMappingUrl = extractSourceMappingUrl\\(cssText\\);',
        replace: 'var sourceMappingUrl = "";',
        flags: 'g'
      }
    }
  ]

我在网上查看后仍然无法弄清楚如何迁移这个preLoaderspostLoaders

我应该把它们放在loaders里面吗?只有这样吗?

1个回答

36
从v2.1-beta.23版本开始,装载器部分被重命名为规则,并且pre/postLoaders现在在每个规则下使用enforce属性进行定义。
我已经在this thread中提供了更详细的答案。
在github的发布说明中也可以找到更多信息。
发布说明还提到了angular cli repo中的迁移示例
另一个提示是查看验证配置的json模式json schema以获取提示。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接