ion-datetime не запускает ionCancel при нажатии кнопки назад (аппаратная часть) - PullRequest
0 голосов
/ 28 января 2019

my Appcomponent.ts ion-datetime имеет функцию ionCancel, которая срабатывает при нажатии кнопки «Отмена» в средстве выбора даты.

Я использую следующую конфигурацию - Ionic Framework: 3.9.2 Сценарии приложения Ionic: 3.1.0 Angular Core: 5.0.0 CLI углового компилятора: 5.0.0 Узел: 8.11.1 Платформа ОС: Windows 7

 <ion-datetime *ngIf="form.elementSlug ==='date'" placeholder="{{form.fieldPlaceHolder}}" type="Date" (click)="onclickDate()" (ionChange)='grabInputDate($event,form.isRequired,form.questionId,form.question)'></ion-datetime>

при выборе или выборе даты, если я нажимаю кнопку «Назад» на Android, она не закрывает средство выбора даты, а покидает страницу (закрывает страницу и переходит на предыдущую страницу, на которой по-прежнему открыт средство выбора даты).я хочу, чтобы он также закрывал сборщик даты.

1 Ответ

0 голосов
/ 28 января 2019

Дайте это попробовать.Поместите этот код внутри platform.ready в app.component.ts.

Но сначала импортируйте следующее:

import { Platform, IonicApp } from 'ionic-angular';

, затем объявите его в конструкторе следующим образом:

constructor(private ionicApp: IonicApp,private platform: Platform){}

В приведенном ниже коде вашего конструктора:

 this.platform.registerBackButtonAction(() => {
        let activePortal = this.ionicApp._loadingPortal.getActive() ||
          this.ionicApp._modalPortal.getActive() ||
          this.ionicApp._toastPortal.getActive() ||
          this.ionicApp._overlayPortal.getActive();

        if (activePortal) {
          activePortal.dismiss();
        }
      });

Из кода довольно понятно, что при нажатии кнопки "Назад" будут отклоняться любые модальные, оверлейные или тосты.

Счастливое кодирование!

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