【问题标题】:ViewController property not working in root componentViewController 属性在根组件中不起作用
【发布时间】:2020-03-29 23:55:25
【问题描述】:

尝试在根组件中使用 viewCtrl 关闭 modalCtrl 时出现以下错误

MyApp_Host.ngfactory.js? [sm]:1 ERROR TypeError: Cannot read property 'dismiss' of undefined

/*****app.component.ts

 import { Component, ViewChild } from '@angular/core';
    import {ModalController, ViewController} from 'ionic-angular';

    @Component({
      templateUrl: 'app.html'
    })
    export class MyApp {
      @ViewChild('ViewController') viewCtrl: ViewController;

      constructor() {

        this.initializeApp();

      }

      initializeApp() {

        let profileModal = this.modalCtrl.create(HomePage);
        profileModal.present();
         setTimeout(function() {
            this.viewCtrl.dismiss();
          }, 2000);

      }

【问题讨论】:

    标签: typescript ionic-framework ionic3


    【解决方案1】:

    有两种方法。

    1. 将超时和关闭设置在模式(主页)内。 示例
      ionViewDidLoad() {
        setTimeout( () => {
          this.viewCtrl.dismiss();
          }, 2000);
      }
    
    1. 在您的模态框的overlay 上使用dismiss。 示例
         let modal = this.modalCtrl.create(HomePage);
         modal.present();
         setTimeout(function() {
             modal.overlay.dismiss();
         }, 2000);
    

    【讨论】:

      猜你喜欢
      • 2021-08-02
      • 2021-06-03
      • 2012-12-16
      • 2016-06-15
      • 1970-01-01
      • 2017-03-24
      • 1970-01-01
      • 1970-01-01
      • 2017-10-27
      相关资源
      最近更新 更多