为了账号安全,请及时绑定邮箱和手机立即绑定

间隔Angular2 + http

间隔Angular2 + http

慕村9548890 2019-10-08 10:39:30
我对angular和rxjs很陌生。我正在尝试创建一个angular2应用程序,该应用程序从静态服务的文本文件(位于服务器本地)中获取一些数据,我想使用Angular2的http提供程序和rxjs的地图在固定时间检索并映射到Datamodel interval(5000)。反映对提供的txt文件的任何更改。有了rxjs 4.x,我知道您可以Observable.interval(5000)用来完成这项工作,但是rxjs 5中似乎并不存在。我的解决方法当前使用刷新整个应用程序来<meta http-equiv="refresh" content="5" >重新加载整个页面,从而重新加载数据。因此,我真正想要的是某种与可观测对象进行此操作的方法,也许可以检查是否发生了任何更改。或只是重新加载数据。任何帮助或其他/更好的方式将不胜感激。到目前为止,我有:@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: [DataService],export class AppComponent {data:DataModel[];constructor(dataService:DataService) {}ngOnInit() {    this.dataService.getData('url').subscribe(        res => {            this.data= res;        },        err => console.log(err),        () => console.log("Data received")        );    }}依赖项:package.json"dependencies": {  "angular2": "^2.0.0-beta.3",  "bootstrap": "^4.0.0-alpha.2",  "es6-promise": "^3.0.2",  "es6-shim": "^0.33.13",  "jquery": "^2.2.0",  "reflect-metadata": "^0.1.2",  "rxjs": "^5.0.0-beta.0",  "systemjs": "^0.19.20",  "zone.js": "^0.5.11"},"devDependencies": {  "typescript": "^1.7.5"}
查看完整描述

3 回答

  • 3 回答
  • 0 关注
  • 535 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信