2017-03-01 77 views
1

我有一个错误,当我导入服务,但我不知道为什么Angular 2 - 什么是DI错误?

import { CDService } from "../../services/definition"; 

constructor(
    private toastyCommunicationService: ToastyCommunicationService, 
    private CDService : CDService, 
    private SharedService: SharedService, 
    private DatePipe: DatePipe 
) { } 

我已经作出了服务litteraly空的,因为我是错误很沮丧,不知道是什么导致它。

export class CDService { 

} 

现在我收到错误

EXCEPTION: Uncaught (in promise): Error: DI Error 
Error: DI Error 

我有2个问题:

1)到底是什么DI错误?

2)我该如何解决这个错误?

+0

这是依赖注入错误。请发布更多代码。 –

+0

@IgorJanković哪个代码?它需要哪些依赖关系?服务中没有单行代码 – Nicolas

回答

4

这是依赖注入错误。我认为你缺少@Injectable()装饰:

@Injectable() // this line 
export class CDService { 

} 

编辑:

您已经添加到CDService NgModule?

+0

我更新了OP – Nicolas

+0

您是否已将CDService添加到NgModule中? –

+0

啊我完全忘了检查!谢谢! – Nicolas

1

请确保您的服务通过使用@Injectable()注射。这种方式不仅能够理解它的类型,而且是一种角度服务。

+0

还有其他方法,但以此开始是最好的方法 –

4

确保您已将此服务添加到您的模块的providers