ионная перезагрузка страницы с другой страницы / модал - PullRequest
0 голосов
/ 30 ноября 2018

РЕДАКТИРОВАТЬ

Я заметил, что событие подписки должно наступить раньше и опубликовать функцию get call.Но будет глупо просить пользователя открывать TabOut page каждый раз при запуске приложения.

Мне не нужно постоянно перезагружать TabOut page, поэтому мне нужен метод такого рода событий для выполнения этой работы.Или просто мог бы просто вызвать перезагрузку на ionViewDidEnter().

У меня есть 2 вкладки и 1 модал./ TabIn, / TabOut и /ModalIn.

Tabs page служат списком данных, которые отображают данные из базы данных на ionViewDidLoad().

ModalIn page служит для ввода данных пользователем для ввода и отправки данных.Эта страница находится в TabIn page и будет вызываться, когда пользователь нажимает на каждый из списка данных.

После успешной отправки формы в ModalIn page Я хочу снова вызвать обновление на TabOut page (независимо от того, была ли она загружена ранее или нет).Я пытался с помощью событий опубликовать это не работает.Ниже приведен мой код.

ModalIn .ts

let headers: any = new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded' }),
options: any = { "username": val, formValue },
url: any = "some_url_here";

this.http.post(url, options, headers)
.subscribe((data: any) => {

  if (data.status == 'success') {
    this.events.publish('shouldReloadData');
  } else {

  }
},
  (error: any) => {
    console.log(error);
  });

TabOut .ts

constructor(public events: Events) {
  events.subscribe('shouldReloadData', () => {
    // Reload the page here
    console.log("should reloadddd"); // <- This is not working
  });
}

1 Ответ

0 голосов
/ 01 декабря 2018

Позвоните subscribe с ключевым словом this внутри TabOut.ts.

constructor(public events: Events) {

  this.events.subscribe('shouldReloadData', () => {

  });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...