angular - 错误:this.scrollableDiv.nativeElement 未定义
问题描述
我想调用组件中scrollIntoView
的HTML元素。但我得到了如下错误。
错误类型错误:“_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>
希望任何人都可以帮助我,请...
提前致谢
解决方案
ngOnInit 在子视图有机会注册之前被调用。
请改用 ngAfterViewInit()。
推荐阅读
- express - 使用 express.static('public') 时难以理解中间件的流程
- c# - C# Automapper 忽略方法 ProjectTo
() - c# - 验证文本文件的最简单方法
- database - 如何处理数据仓库中的图关系?
- android - jetified-kotlin-reflect 版本与 jetified-kotlin-stdlib 不同
- vim - 如何替换多行引号内的内容
- python - 如何将 xr.Dataset 坐标作为字符串获取?
- java - ModelMapper - 无法将 org.hibernate.collection.internal.PersistentBag 转换为 java.util.ArrayList
- google-apps-script - 修改 Google Apps 脚本全局变量
- android - 找不到构建工具修订版 30.0.1