错误:意外的模块' DatePickerModule'由模块' AppModule'声明。请添加@ Pipe / @ Directive / @ Component注释

时间:2017-05-02 01:19:27

标签: angular bootstrap-datepicker

我想在我的应用程序中使用Angular的 DatePickerModule 。所以我按如下方式安装了软件包:npm install ng2-datepicker-bootstrap --save

安装成功。现在,我在AppModule中导入了 DatePickerModule 模块,如下所示:

import { DatePickerModule } from 'ng2-datepicker-bootstrap';

@NgModule({

  declarations: [
    other Components......,
    DatePickerModule
  ],
  imports: [
    ........
  ],
  providers: [Service, DatePickerModule],
  bootstrap: [AppComponent]
})

export class AppModule { }

然后在我的 info.component.html

中使用以下代码
<datepicker [(ngModel)]="model.firstDate" [viewFormat]="'DD/MM/YYYY'" [modelFormat]="'YYYY-MM-DD'"  [id]="'firstDate'" [label]="'To'"></datepicker> 

但是当我运行项目时出现了这个错误: 错误:意外的模块&#39; DatePickerModule&#39;由模块&#39; AppModule&#39;声明。请添加@ Pipe / @ Directive / @ Component注释。

顺便说一句,我是Angular2的新手。

2 个答案:

答案 0 :(得分:1)

为什么要将DatePickerModule放在提供程序中?只需要将服务放在那里,当应用程序被引导时,angular会创建服务实例。

答案 1 :(得分:0)

检查module.ts文件中import语句中是否缺少引用。 如果你的组件中有:

import { DatePickerModule,SomeOtherModule } from 'somewhere';

在module.ts文件中,您必须具有相同的导入

import { DatePickerModule,SomeOtherModule } from 'somewhere';

如果你只有

import { DatePickerModule } from 'somewhere';

或者您没有进口声明 然后会抛出此错误,因为您没有添加&#34; SomeOtherModule&#34;进口声明。