我对angular和rxjs很新.我正在尝试创建一个angular2应用程序,从静态服务的文本文件(本地服务器)获取一些数据,我想检索并使用Angular2的http提供程序和rxjs的映射在固定时间映射到Datamodel interval(5000).反映对服务的txt文件的任何更改.
使用rxjs 4.x我知道你可以Observable.interval(5000)用来完成这项工作,但它似乎不存在于rxjs 5中.我的解决方法当前刷新整个应用程序使用<meta http-equiv="refresh" content="5" >哪个重新加载整个页面,从而重新加载数据.
所以我真正想要的是使用observable进行此操作的一些方法,也许是为了检查是否发生了任何更改.或者只是重新加载数据.
任何帮助或其他/更好的方式将非常感谢.
到目前为止我所拥有的:
@Injectable()
export class DataService {
constructor(private http:Http){}
getData(url) {
return this.http.get(url)
.map(res => {
return res.text();
})
.map(res => {
return res.split("\n");
})
.map(res => {
var dataModels: DataModel[] = [];
res.forEach(str => {
var s = str.split(",");
if(s[0] !== "") {
dataModels.push(new DataModel(s[0], parseInt(s[1]), parseInt(s[2])));
}
});
return dataModels;
})
}
}
@Component({
selector: 'my-app',
template: `Some html to display the data`,
providers: …Run Code Online (Sandbox Code Playgroud)