2016-04-19 8 views
1

Ich versuche zu schaffen Hot beobachtbar (RxJS API) in Winkel 2 ähnlich wie Arbeitsbeispiel zu erstellen So in http://jsbin.com/fewotud/3/edit?js,consoleIn Angular 2 Fehlern bei der Verwendung von Veröffentlichen und Connect Hot beobachtbaren

, wenn ich auf "Veröffentlichen", um den Debugger erzähl mir weiter die Publish Funktion ist undefined so meine Frage wie kann ich Publish in Angular 2 verwenden? Vermisse ich eine Bibliothek? hier ist mein Code:

//our root app component 
import {Component} from 'angular2/core'; 
import {Observable} from 'rxjs/Observable'; 

@Component({ 
    selector: 'my-app', 
    providers: [], 
    template: ` 
    <div> 
     <h2>Hello {{name}}</h2> 
     <table><tr *ngFor="#itm of values"><td>{{itm}}</td></tr></table> 
    </div> 
    `, 
    directives: [] 
}) 
export class App { 
    tasks:Observable<Array<number>>; 
    constructor() { 
    this.values=[]; 

    let tasks=new Observable(observer => 
    { 
     observer.next(1); 
     observer.next(2); 
     observer.next(3); 

    }).publish(); 
    tasks.connect() 

    let subscription= this.tasks.subscribe(
     value => this.values.push(value+5),error => this.error='error !', 
    () => this.finished = 'completed !' 
    ); 
    ) 
    this.name = 'Angular2'; 




    } 

} 

hier ist meine Vollversion in plnkr: https://plnkr.co/edit/DFT8AWmAiKAO2CvjrUWn?p=preview

+0

Sie benötigen Rx 'Import 'rxjs/Rx' zu importieren;' –

Antwort

1

Sie müssen es sind so etwas mit:

import {Observable} from 'rxjs/Rx'; 

oder

import 'rxjs/add/operator/publish'; 

ich sehe auch einige Fehler in Ihrem c Ode:

let subscription= tasks.subscribe(// <------- 
    value => this.values.push(value+5),error => this.error='error !', 
() => this.finished = 'completed !' 
); 
) 

Und Sie brauchen die connect Methode nach der Anmeldung nennen ...

Sehen Sie diese plunkr: https://plnkr.co/edit/ESA5RZ4Ce7jz485CIcIy?p=preview.

Verwandte Themen