Tag: angular2 services

属性'toPromise'在types'Observable <Response>'上不存在

import { Headers, Http } from '@angular/http'; @Injectable() export class PublisherService{ private publishersUrl = 'app/publisher'; constructor(private http: Http) { } getPublishers(): Promise<Publisher[]>{ return this.http.get(this.publishersUrl) .toPromise() .then(response => response.json().data) .catch(this.handleError); } } 我得到这个错误: “Observable”types的属性“toPromise”不存在

Angular2:如何在渲染组件之前加载数据?

我正试图从我的API加载一个事件之前组件呈现。 目前,我正在使用我从组件的ngOnInit函数调用的API服务。 我的EventRegister组件: import {Component, OnInit, ElementRef} from "angular2/core"; import {ApiService} from "../../services/api.service"; import {EventModel} from '../../models/EventModel'; import {Router, ROUTER_DIRECTIVES, ROUTER_PROVIDERS, RouteConfig, RouteParams, RouterLink} from 'angular2/router'; import {FORM_PROVIDERS, FORM_DIRECTIVES, Control} from 'angular2/common'; @Component({ selector: "register", templateUrl: "/events/register" // provider array is added in parent component }) export class EventRegister implements OnInit { eventId: string; ev: […]

如何在Angular 2中创build一个单例服务?

我已经读过注入引导应该有所有的孩子共享相同的实例,但我的主要和头组件(主要应用程序包括头部组件和路由器出口)每个获得我的服务单独的实例。 我有一个FacebookService,我用来调用Facebook的JavaScript API和使用FacebookService的UserService。 这是我的引导: bootstrap(MainAppComponent, [ROUTER_PROVIDERS, UserService, FacebookService]); 从我的日志logging看起来像bootstrap调用完成,然后我看到FacebookService,然后在每个构造函数代码运行,MainAppComponent,HeaderComponent和DefaultComponent之前创buildUserService: