错误地解析符号值静态 - 角度4

时间:2017-06-27 12:52:55

标签: angular

您好我已经扩展了http,这是我的模块:

providers: [
    {
      provide: HttpService,
      useFactory: (backend: XHRBackend, options: RequestOptions) => {
        return new HttpService(backend, options);
      },
      deps: [XHRBackend, RequestOptions]

第一个服务'给我这个错误:

  

在静态解析符号值时遇到错误。函数调用   不受支持。考虑用a替换函数或lambda   引用导出的函数

但是我只是再次按Ctrl + S到一个文件而没有改变任何东西后编译成功。 我必须在我的模块中改变以解决这个问题"休闲"错误?

1 个答案:

答案 0 :(得分:2)

这是AOT编译器抱怨Arrow Function(lambda)。 () => {}。尝试更改此内容。

useFactory: (backend: XHRBackend, options: RequestOptions) => {
    return new HttpService(backend, options);
},

对此:

deps: [XHRBackend, RequestOptions],
useFactory(backend: XHRBackend, options: RequestOptions) {
   return new HttpService(backend, options);
},

这是一篇有用的文章。 https://medium.com/@isaacplmann/making-your-angular-2-library-statically-analyzable-for-aot-e1c6f3ebedd5

相关:

https://github.com/angular/angular/issues/13614