繁体   English   中英

如何在使用间隔时立即启动Angular 2 Observable

[英]How to start immediately an Angular 2 Observable when using interval

我有以下Angular 2服务,每5秒获取一次数据:

import { Observable } from "rxjs/Rx";
import { Http, Response } from '@angular/http';


@Injectable()
export class DataService{
  getData():{
    return Observable
        .interval(5000)
        .flatMap(() => this.http.get('http://some_url'))
        .map((res: Response) => res.json())
  }

有没有办法让这个服务在开始时执行请求? 否则它将在第一次执行之前等待5秒。

timer替换interval ,因为它允许您指定初始延迟:

getData():{
  return Observable
    .timer(0, 5000)
    .flatMap(() => this.http.get('http://some_url'))
    .map((res: Response) => res.json())
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM