imgSlider: ElementRef在ngOnInit报undefined

来源:3-3 在组件类中引用模版

basd1995

2020-03-02

export class ImageSliderComponent implements OnInit {

  @Input() sliders: ImageSlider[] = [];
  @ViewChild('imageSlider', { static: true }) imgSlider: ElementRef;

  constructor() { }

  ngOnInit() {
    console.log('ngOnInit', this.imgSlider);
  }

}
//log结果 ngOnInit undefined

断点在console.log(‘ngOnInit’, this.imgSlider);上,进入断点的时候没有出现页面,undefined是正常,但是视频里面是用东西的,我有些不理解他的生命周期怎么这么奇怪

写回答

1回答

接灰的电子产品

2020-03-02

视频录的时候是8.0的rc版本,有些机制在后来改掉了

0
2
N加1次方
回复
basd1995
我也是undefined,另外我在html文件加了引用,stackoverflow答案: The issue is accessing the element before it was rendered. You must ensure that the content is rendered before it is being used. So instead of accessing it inside ngOnInit, you should do in ngAfterViewInit. @ViewChild('knowledgeTextarea') knowledgeTextarea: ElementRef; ngAfterViewInit() { this.knowledgeTextarea.nativeElement.focus(); }
2021-03-21
共2条回复

Angular 开发拼多多webapp 从基础到项目实战

高仿拼多多WebApp,带你在实战环境中学习Angular

1317 学习 · 451 问题

查看课程