Как запустить обновление данных в представлении? - PullRequest
0 голосов
/ 05 мая 2018

У меня возникли проблемы с обновлением данных, на мой взгляд. У меня есть служба, которая возвращает данные, и я вижу в консоли, что она загружает самый новый пост.

Однако в моем приложении Ionic новейшая запись не отображается. Я звоню в службу в ionViewDidEnter, и я даже пытался принудительно обновить представление, используя NgZone в Angular. Пока что ни одно решение не сработало. Я также пытался использовать applicationRef.tick (), но также не помог.

Работает нормально, когда в браузере отключаю кеш. Тогда я могу увидеть новейший пост. Но он не работает на моем устройстве, так как новые данные не отображаются после кэширования первых данных.

У вас есть идеи, как решить эту проблему?

Это мой машинописный файл, и вы можете увидеть мою ионную информацию ниже.

/**
* @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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...