首页 > 解决方案 > 错误:this.scrollableDiv.nativeElement 未定义

问题描述

我想调用组件中scrollIntoViewHTML元素。但我得到了如下错误。

错误类型错误:“_this.scrollableDiv.nativeElement 未定义”

组件代码

  @Input("data") detailData : any = {};
  @ViewChild('scrollableDiv') scrollableDiv: ElementRef;

  ngOnInit() {
    console.log(this.detailData);
   const myNode = this.detailData;
   console.log(myNode)

    if (myNode) {
      console.log(this.detailData);
      setTimeout(() => {
        this.scrollableDiv.nativeElement.scrollIntoView({ behavior: "smooth", block: "start" });
      });

     }

  }

HTML中,我提供了如下

HTML

<div [id]="detailData.key" #scrollableDiv>

希望任何人都可以帮助我,请...

提前致谢

标签: angulartypescript

解决方案


ngOnInit 在子视图有机会注册之前被调用。

请改用 ngAfterViewInit()。


推荐阅读