// #docregion import { Component } from '@angular/core'; import { Observable } from 'rxjs/Rx'; @Component({ selector: 'hero-message', template: `

Async Hero Message and AsyncPipe

Message: {{ message$ | async }}

`, }) export class HeroAsyncMessageComponent { message$: Observable; private messages = [ 'You are my hero!', 'You are the best hero!', 'Will you be my hero?' ]; constructor() { this.resend(); } resend() { this.message$ = Observable.interval(500) .map(i => this.messages[i]) .take(this.messages.length); } } // #enddocregion // Alternative message$ formula: // this.message$ = Observable.fromArray(this.messages) // .map(message => Observable.timer(500).map(() => message)) // .concatAll();