在我的 Angular2 应用程序中出现以下错误 错误:(SystemJS) 模块“AppModule”声明的意外值“ReleasesService”。请添加 @Pipe/@Directive/@Component 注解。
我的 应用模块:
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { routing } from './app.routes';
import { HttpModule } from '@angular/http';
import { SearchFilter } from '../app/search-filter.pipe';
import { ReleasesService } from '../app/releases/releases.service';
import { AppComponent } from './app.component';
import { HomeComponent } from '../app/home/home.component';
import { ReleasesComponent } from '../app/releases/releases.component';
import { DistroComponent } from '../app/distro/distro.component';
import { ContactComponent } from '../app/contact/contact.component';
@NgModule({
imports: [ BrowserModule, HttpModule, routing ],
declarations: [ AppComponent,
SearchFilter,
HomeComponent,
ReleasesComponent,
ReleasesService,
DistroComponent,
ContactComponent ],
bootstrap: [ AppComponent ]
})
export class AppModule { }
我的 发布服务:
import { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';
import { Observable } from 'rxjs/Observable';
import { IRelease } from './release';
import 'rxjs/add/operator/map';
@Injectable()
export class ReleasesService {
getReleases() {
return IRelease;
}
}
如何解决?我重新安装了 Quickstarter (我的应用程序的基础),并在尝试创建服务时遇到同样的错误。
原文由 Alexandr Belov 发布,翻译遵循 CC BY-SA 4.0 许可协议
declarations
仅适用于可声明类: 组件指令和管道您可以将
ReleasesService
添加到providers
数组也可以看看