【发布时间】:2018-01-11 07:45:17
【问题描述】:
console.log(this.slides.length()); 打印 Cannot read property 'length' of undefined.
在 setTimeout(共 100 个)上打印。
是否有任何方法可以识别子组件是否从父组件完全加载?
<ion-content padding class="ttct-app-content">
<ion-slides>
<ion-slide>
<h1>Slide 1</h1>
</ion-slide>
<ion-slide>
<h1>Slide 2</h1>
</ion-slide>
<ion-slide>
<h1>Slide 3</h1>
</ion-slide>
</ion-slides>
</ion-content>
import { Component, ViewChild } from '@angular/core';
import { NavController, Slides } from 'ionic-angular';
@Component({
selector: 'page-compose',
templateUrl: 'compose.html',
})
export class Compose {
@ViewChild(Slides) slides: Slides;
constructor(public navCtrl: NavController) {
}
ngAfterViewInit(){
console.log(this.slides.length()); //Cannot read property 'length' of undefined
//works
/*
setTimeout(()=>{
console.log(this.slides.length());
},100);
*/
}
}
【问题讨论】:
-
你试过其他的钩子吗?
-
@BogdanC:是的,我尝试了这篇文章中的所有钩子angular.io/guide/lifecycle-hooks#!#spy
-
这是 ionic-2 中的错误吗?
-
请添加您正在使用的离子版本,以便我进行测试。
-
@BogdanC : "ionic-angular": "3.5.3",