webpack错误:最终加载器没有返回Buffer或String

时间:2016-12-05 08:49:34

标签: angular typescript webpack

当我使用systemjs进行构建时,它成功了,但是当我使用webpack时,我收到此错误.. 错误:最终加载器没有返回缓冲区或字符串

3 个答案:

答案 0 :(得分:9)

以下是我经过长时间调查后的调查结果,很多可能是

首先要检查

如果您使用 ts-loader ,则可能

“没有可用于NgModule的元数据”

如果 awesome-typescript-loader ,那么您将获得有针对性的错误结果,如

  • “最终加载程序未返回缓冲区或字符串”*。

您使用该决定的装载机对您有好处,我更喜欢 awesome- typescript-loader

检查以下不幸事件..

  1. import语句指向确切的文件;
  2. import语句中文件名中的拼写错误;导入 不存在的模块。
  3. 检查您是否已安装全部 像

    这样的装载机

    css-loader node-sass resolve-url-loader sass-loader \    style-loader url-loader

  4. 4.import语句为空

    前:

    import * from '';
    

    5.什么都不返回的服务和提供商也可能导致此错误。

答案 1 :(得分:2)

经过长时间的试用和试用,我改为ts-loader,错误消失了。

  module: {
    loaders: [
      {test: /\.ts$/, loader: 'ts' },
      {test: /\.css$/, loader: 'style!css'},
      {test: /\.html/, loader: 'html'},
      {test: /\.tsx?$/, loader: 'ts-loader'},
      // {test: /\.tsx?$/, loader: 'awesome-typescript-loader'},
      //{test: /\.(ico|png|jpg|gif|svg|eot|ttf|woff|woff2)(\?.+)?$/, loader: 'url?limit=50000'}
    ],
    preLoaders: [
      // All output '.js' files will have any sourcemaps re-processed by 'source-map-loader'.
      { test: /\.js$/, loader: 'source-map-loader' }
    ]
  },

答案 2 :(得分:0)

今天,我也面临同样的问题,我应用了上述所有要点。但是上面的每个答案都无法解决问题,然后我发现我在代码中添加了一个分号,导致错误。

在构造函数后删除额外的分号

class MyClass {
    constructor(){

    };
}

new MyClass();

我删除了分号,一切正常。

 class MyClass {
    constructor(){

    }
}

new MyClass();