Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 错误:ValidateService没有提供程序_Angular_Service - Fatal编程技术网

Angular 错误:ValidateService没有提供程序

Angular 错误:ValidateService没有提供程序,angular,service,Angular,Service,我正在使用@angular/cli。为了验证表单,我使用了validateservice,创建了一个名为services的文件夹,然后运行nggservicevalidate。 创建了两个文件,在validate.service中,我编写了一些验证函数。然后我将它导入到我的另一个文件中,并在构造函数中创建了一个实例,使用下面的关键字调用它 constructor(private vd : ValidateService) { } 然后我向ng服务部询问。因此,它给出了以下错误 ERROR E

我正在使用@angular/cli。为了验证表单,我使用了validateservice,创建了一个名为services的文件夹,然后运行nggservicevalidate。 创建了两个文件,在validate.service中,我编写了一些验证函数。然后我将它导入到我的另一个文件中,并在构造函数中创建了一个实例,使用下面的关键字调用它

 constructor(private vd : ValidateService) { }
然后我向ng服务部询问。因此,它给出了以下错误

ERROR Error: Uncaught (in promise): Error: No provider for ValidateService!

有人说,这个捆绑包坏了,它很快就会修复,而不是使用dev捆绑包。这是什么。我不知道如何使用app.module.ts文件中的提供者

@NgModule({
    imports: [],
 providers: [ValidateService]
})

使用app.module.ts文件中的提供程序,如

@NgModule({
    imports: [],
 providers: [ValidateService]
})

有两种方法和最新的方法:

第一:

@NgModule({
    imports: [],
 providers: [ValidateService]
})
第二:

@Component({
    selector: 'countries',
    providers: [ValidateService]
})
这取决于需求


如果希望每个组件实例有一个服务实例,请将其添加到 组件的提供者。如果要为 整个应用程序,将其添加到NgModule的提供商。这包括在 关于服务和依赖注入的文档

如@JB Nizet在评论部分所述


有两种方法和最新的方法:

第一:

@NgModule({
    imports: [],
 providers: [ValidateService]
})
第二:

@Component({
    selector: 'countries',
    providers: [ValidateService]
})
这取决于需求


如果希望每个组件实例有一个服务实例,请将其添加到 组件的提供者。如果要为 整个应用程序,将其添加到NgModule的提供商。这包括在 关于服务和依赖注入的文档

如@JB Nizet在评论部分所述


您需要在@component中设置[provider]。我该如何设置,为什么要设置。这是最新的方式吗?是的,请您将组件文件的代码放在这里,这样我可以建议您最好如果您希望每个组件实例有一个服务实例,请将它添加到组件的提供者中。如果您想要整个应用程序的唯一实例,请将其添加到NgModule的提供程序中。关于服务和依赖注入的文档涵盖了这一点。此外,当您生成服务时,CLI会打印一条警告,提醒您将其添加到某个提供程序中,因为它无法猜测where.yep,thanx@JBNizet。但在我使用angular cli之前,如果不这样做,它工作正常。当我们生成它时,它是否有可能自动添加到此提供程序。Thanxy您需要在@component中设置[provider]。我该怎么做,为什么要这样做。这是最新的方式吗?是的,请您将组件文件的代码放在这里,这样我可以建议您最好如果您希望每个组件实例有一个服务实例,请将它添加到组件的提供者中。如果您想要整个应用程序的唯一实例,请将其添加到NgModule的提供程序中。关于服务和依赖注入的文档涵盖了这一点。此外,当您生成服务时,CLI会打印一条警告,提醒您将其添加到某个提供程序中,因为它无法猜测where.yep,thanx@JBNizet。但在我使用angular cli之前,如果不这样做,它工作正常。当我们生成它时,它是否有可能自动添加到此提供程序。Thanx我们以前没做过。这是最新的吗thing@harnish不,一直都是这样。始终需要提供服务,而且CLI从未为您决定在何处提供服务。我们以前没有这样做。这是最新的吗thing@harnish不,一直都是这样。始终需要提供服务,而且CLI从未为您决定在何处提供服务。