【发布时间】:2018-11-06 17:18:48
【问题描述】:
在我的 Angular 7 应用程序中,我在树形视图中有超过 5000 个元素。我需要访问已选择的 DOM 元素,所以我可以使用类似scrollIntoView 的东西。基本上我的伪代码如下所示:
if selected element is not visible
call scrollIntoView on the element
问题是,每次按下键盘时我都需要调用它(向上和向下箭头)。我试过传入$event 来查找前一个元素、下一个元素等等,所以我可以简单地在那个元素上调用scrollIntoView(),但我认为这不是一个好主意。它涉及大量递归(因为树视图是嵌套的)并且我的 HTML 永远不会改变(除非我也更新代码)。
是否可以根据条件设置ViewChild()?这样我就可以简单地做this.selectedElement.nativeElement.scrollIntoView() 或类似的事情。除非有更好的主意?
【问题讨论】:
-
也许这个链接会对你有所帮助:stackoverflow.com/questions/53149659/….
-
@ShashikantDevani 除了我只需要我的唯一元素。
-
那么你可以从
ngFor传递索引 -
@ShashikantDevani 这有什么帮助?