错误:"无法解析e :(?)的所有参数."

Ste*_*rov 14 angular-cli angular

在使用angular-cli部署到github-pages后,我遇到了这样的错误:

错误:"无法解析e :(?)的所有参数."

本地应用工作.您建议采取哪些步骤来找到问题所在?

尝试使用angular-cli beta29beta30.

UPD:我已从应用程序中删除了路由器以进行测试.不是我只有一个猜测它是DI的东西.

UPD2(找到了地方):

问题在于覆盖RequestOptions,所以:

export class RequestOptionsService extends RequestOptions {}
Run Code Online (Sandbox Code Playgroud)

并提供者定义:

{ provide: RequestOptions, useClass: RequestOptionsService },
Run Code Online (Sandbox Code Playgroud)

这对我来说仍然是一个问题.

  • 不要覆盖RequestOptions构造函数 - 错误.
  • RequestOptions用空参数覆盖构造函数 - 没有错误
  • RequestOptions用参数覆盖构造函数 - 错误

这是我覆盖构造函数的方式:

constructor(options?: RequestOptionsArgs) {
  super(options);
}
Run Code Online (Sandbox Code Playgroud)

这可能有什么问题?

UPD3(解决自己的案例):

问题确实存在RequestOptions,所以你不应该这样做:

export class RequestOptionsService extends RequestOptions {}
Run Code Online (Sandbox Code Playgroud)

但是只有:

export class RequestOptionsService extends BaseRequestOptions {}
Run Code Online (Sandbox Code Playgroud)

sma*_*use 1

确保:

  • 你有"emitDecoratorMetadata": true你的tsconfig.js
  • 每个服务都不缺少@Injectable()装饰器
  • 组件构造函数注入您的服务(将它们作为参数传递)