Angularjs HTTP get请求只对ionic有效一次
我正在尝试使用ionic访问RESTAPIAngularjs HTTP get请求只对ionic有效一次,angularjs,ionic-framework,ionic2,Angularjs,Ionic Framework,Ionic2,我正在尝试使用ionic访问RESTAPI updateMachine(id) { console.log(id); if (this.data) { return Promise.resolve(this.data); } return new Promise(resolve => { this.http.get(this.apiUrl) .map(res => res.json()) .subscribe(data =>
updateMachine(id) {
console.log(id);
if (this.data) {
return Promise.resolve(this.data);
}
return new Promise(resolve => {
this.http.get(this.apiUrl)
.map(res => res.json())
.subscribe(data => {
this.data = data;
resolve(this.data);
});
});
}
这是服务的承诺。当我点击一个按钮时,它会触发调用上述服务的函数。但请求只在ionic应用程序第一次加载时发送。之后,它不会将请求发送到服务器。但是发送第一次获取的响应。这就是编写代码的方式,逻辑是 如果未设置数据,则从http查询数据,否则返回现有数据 这一部分检查现有数据并返回现有数据,您的功能不再执行另一个http调用
if (this.data) {
return Promise.resolve(this.data);
}