提供程序的运行时异常 - Ionic2、Angular2 (Typescript)

runtime exception with providers - Ionic2 , Angular2 (Typescript)

当我尝试 运行 我的 ionic2 应用程序 (Typescript)

时出现以下错误

ORIGINAL EXCEPTION: No provider for User! (BeerSearch -> User)

以下是我的代码

#providers/beer_search/BeerSearch
import { User } from '../user/user';
......

@Injectable()
export class BeerSearch {
   constructor(private http: Http, user: User, config: Config) {
    this.headers = new Headers();
    this.headers.append('Access-Token', user.getAccessToken())
  }
}

#providers/user/user
.....

@Injectable()
export class User {
  accessToken: string;

  constructor(private http: Http) {
    this.accessToken = '<Some token>';
  }

  getAccessToken(){
    return this.accessToken;
  }
}

我在这里找不到我做错了什么,这也不会在编译时用 typescript 给出任何错误。我只在 运行 时间内收到此错误。

如果需要,您可以在服务中调用服务中的服务。那完全没有问题。您只需将它们添加到 bootstrap 供应商数组

bootstrap(App, [..., User, BeerSearch]);

或根组件的 providers 数组。

@Component({
    ...,
    providers: [..., User, BeerSearch]
})
export class FooComponent { ... }

否则他们不会像您刚刚经历的那样得到解决