如何将以下webpack 1代码转换为webpack 2代码

时间:2017-02-16 21:59:27

标签: webpack webpack-2

我有以下配置来自我从github下载的种子项目。

var atlOptions = '';
  if (isTest && !isTestWatch) {
    // awesome-typescript-loader needs to output inlineSourceMap for code coverage to work with source maps.
    atlOptions = 'inlineSourceMap=true&sourceMap=false';
  }    
config.module = {
        rules: [
          // Support for .ts files.
          {
            test: /\.ts$/,
            // need to be replace with use
            loaders: ['awesome-typescript-loader?' + atlOptions, 'angular2-template-loader', '@angularclass/hmr-loader'], 
            exclude: [isTest ? /\.(e2e)\.ts$/ : /\.(spec|e2e)\.ts$/, /node_modules\/(?!(ng2-.+))/]
          }
    ]}

我正在尝试将webpack 1的代码转换为webpack 2,所以我做的第一件事就是使用' use'替换装载程序或装载程序。

它适用于大多数情况,请在我拥有以下加载程序的情况下进行操作:

loaders: ['awesome-typescript-loader?' + atlOptions, 'angular2-template-loader', '@angularclass/hmr-loader']

我试图将其转换为以下代码:

use:[{  loader:'awesome-typescript-loader?' + atlOptions  },{ loader:'angular2-template-loader' },{ loader:'@angularclass/hmr-loader' }]

但是当我尝试使用webpack构建项目时,我遇到了错误。 这个错误的原因是什么,我做错了什么(可能):(

1 个答案:

答案 0 :(得分:1)

你试过这个吗?

use: [
  {  
    loader: 'awesome-typescript-loader'
    options: {
      inlineSourceMap: true,
      sourceMap: false,
    }  
  },
  { 
    loader:'angular2-template-loader' 
  },
  { 
    loader:'@angularclass/hmr-loader' 
  }
]