我在视图中更新数据时遇到了一些问题。我有一个返回数据的服务,我可以在控制台中看到它正在获取最新的帖子。
但是,在我的Ionic应用程序中,不会显示最新的帖子。我在ionViewDidEnter中调用该服务,我甚至尝试使用Angular中的NgZone强制更新视图。到目前为止还没有解决方案。 我也试过使用applicationRef.tick(),但也没有帮助。
当我禁用缓存时,它在浏览器中工作正常。然后我可以看到最新的帖子。但它在我的设备上不起作用,因为在缓存了第一个数据后没有显示新数据。
你知道如何解决这个问题吗?
这是我的打字稿文件,您可以在下面看到我的Ionic信息。
/**
* @description this is where the data loads from the service. This
event always fires. It is a way of stopping caching in the app.
*/
ionViewDidEnter() {
this.zone.run(() => {
this.loadItems();
});
}
/**
* @description loads all items
*/
loadItems() {
// Create the loader
let loader = this.loadingController.create({
content: "Getting data.."
});
loader.present();
// Get the most recent 100 posts
this.itemApi.getItems(100).then(data => {
loader.dismiss();
this.posts = data
this.initializeItems();
});
}
/**
* @description set the new data equal to the items returned.
*/
initializeItems() {
// The data is reset to all items
this.zone.run(() => {
this.items = this.posts;
});
}
我的离子信息:
cli packages:
@ionic/cli-utils : 1.19.2
ionic (Ionic CLI) : 3.20.0
全球套餐:
cordova (Cordova CLI) : 8.0.0
本地包裹:
@ionic/app-scripts : 1.3.7
Cordova Platforms : android 6.4.0 ios 4.5.4
Ionic Framework : ionic-angular 3.1.1
系统:
Node : v8.10.0
npm : 5.6.0
OS : macOS High Sierra
环境变量:
ANDROID_HOME : not set