Ionic 4 Angular - 如何自行关闭模态
Ionic 4 Angular - How to self dismiss a modal
在 Ionic 3 中,关闭模态非常简单:
constructor(viewCtrl: ViewController) {
this.viewCtrl.dismiss()
}
在 Ionic 4 中,我无法导入 ViewController
(或者准确地说,我的 IDE 试图导入一种 ViewController)。
我想知道解除模态的新方法是什么。
根据文档,dismiss
方法似乎已移至 ModalController。
所以要关闭模态,我需要做:
constructor(modalCtrl: ModalController) {
modalCtrl.dismiss();
}
我如何在 post 问题后找到答案。
这里似乎缺少 ionic v4 文档,但我相信从模态访问 dismiss
的正确方法是:
import { Components } from '@ionic/core';
@Component({
selector: 'app-some-modal',
templateUrl: 'some-modal.component.html',
styleUrls: ['some-modal.component.scss']
})
export class SomeModalComponent {
// modal is available here where created with:
// modalController.create({ component: SomeModalComponent})
@Input() modal: Components.IonModal;
onCancel = () =>
this.modal.dismiss('cancel');
}
虽然 modal
实际上是 HTMLIonModalElement
类型,但我正在使用 Components.IonModal
因为 HTMLIonModalElement
应该是全局的,但它对 [=20= 不可见] 出于某种原因。
关闭 ionic v4 中的模态。在您的离子模态组件中执行以下操作
export class ExampleModalComponent implements OnInit {
constructor(private navCtrl: NavController, private modalCtrl: ModalController) {
}
async closeModal() {
await this.modalCtrl.dismiss();
}
}
在您的组件中 HTML 按钮应该看起来像这样。
<ion-button (click)="closeModal()">
<ion-icon slot="icon-only" name="arrow-back"></ion-icon>
</ion-button>
您可以像这样使用自动关闭模态。
constructor(
private modal: ModalController,
) { }
dismiss() {
this.modal.dismiss();
}
在 Ionic 3 中,关闭模态非常简单:
constructor(viewCtrl: ViewController) {
this.viewCtrl.dismiss()
}
在 Ionic 4 中,我无法导入 ViewController
(或者准确地说,我的 IDE 试图导入一种 ViewController)。
我想知道解除模态的新方法是什么。
根据文档,dismiss
方法似乎已移至 ModalController。
所以要关闭模态,我需要做:
constructor(modalCtrl: ModalController) {
modalCtrl.dismiss();
}
我如何在 post 问题后找到答案。
这里似乎缺少 ionic v4 文档,但我相信从模态访问 dismiss
的正确方法是:
import { Components } from '@ionic/core';
@Component({
selector: 'app-some-modal',
templateUrl: 'some-modal.component.html',
styleUrls: ['some-modal.component.scss']
})
export class SomeModalComponent {
// modal is available here where created with:
// modalController.create({ component: SomeModalComponent})
@Input() modal: Components.IonModal;
onCancel = () =>
this.modal.dismiss('cancel');
}
虽然 modal
实际上是 HTMLIonModalElement
类型,但我正在使用 Components.IonModal
因为 HTMLIonModalElement
应该是全局的,但它对 [=20= 不可见] 出于某种原因。
关闭 ionic v4 中的模态。在您的离子模态组件中执行以下操作
export class ExampleModalComponent implements OnInit {
constructor(private navCtrl: NavController, private modalCtrl: ModalController) {
}
async closeModal() {
await this.modalCtrl.dismiss();
}
}
在您的组件中 HTML 按钮应该看起来像这样。
<ion-button (click)="closeModal()">
<ion-icon slot="icon-only" name="arrow-back"></ion-icon>
</ion-button>
您可以像这样使用自动关闭模态。
constructor(
private modal: ModalController,
) { }
dismiss() {
this.modal.dismiss();
}