【问题标题】:angular2 - no service provider for DatepickerConfigangular2 - DatepickerConfig 没有服务提供商
【发布时间】:2017-05-26 00:37:26
【问题描述】:

我正在实现 ng2-bootstrap 日期选择器,但出现以下错误。请帮助我。

EXCEPTION: Uncaught (in promise): Error: Error in
         http://localhost:8888/app/components/report.component.html:3:0 caused by: No provider for DatepickerConfig! 

module.ts

 import { DatepickerModule } from 'ng2-bootstrap';

  @NgModule({
   imports: [DatepickerModule],
   declarations: [],
   providers: [],
   bootstrap: [AppComponent]
})

component.ts

@Component({
 module: module.id,
 selector:'my-date',
 template: `
  <h4>My Date Picker</h4>
  <datepicker></datepicker>`
})

 export class MyComponent {
 }

systemjs.config.js

System.config({ map: { 'ng2-bootstrap':
 'npm:ng2-bootstrap/bundles/ng2-bootstrap.umd.js'} })

【问题讨论】:

  • 问题解决了吗?

标签: angular ng2-bootstrap ng2-datepicker


【解决方案1】:

您应该使用 forRoot(),因为它在示例存储库中以这种方式定义。

  @NgModule({
   imports: [DatepickerModule.forRoot()],
   declarations: [],
   providers: [],
   bootstrap: [AppComponent]
})

按照惯例,forRoot 静态方法同时提供和配置服务。它接受一个服务配置对象并返回一个 ModuleWithProviders,这是一个具有两个属性的简单对象:

• ngModule - CoreModule 类

• 提供者 - 配置的提供者

根 AppModule 导入 CoreModule 并将提供程序添加到 AppModule 提供程序。

来源:https://angular.io/docs/ts/latest/guide/ngmodule.html#!#configure-core-services-with-coremodule-forroot

示例存储库:https://github.com/valor-software/angular2-quickstart/blob/master/app/app.module.ts

【讨论】:

  • @arn-arn 很高兴我能帮上忙 :-)
猜你喜欢
  • 2018-10-23
  • 2019-10-21
  • 2016-05-28
  • 2017-09-22
  • 2017-10-08
  • 2017-07-21
  • 1970-01-01
  • 2020-02-04
  • 1970-01-01
相关资源
最近更新 更多