从一个组件触发滚动到另一个组件中的元素顶部

时间:2016-09-15 15:34:06

标签: angular typescript angular2-template angular2-directives

我有这个表是TableComponent的一部分:

<table class="th-tracker-table th-environmental-table" #trackerTable>

我希望从MyComponent访问它并在触发swapProjectsGroups()方法时滚动到组件顶部

export class MyComponent {

    @ViewChild("#trackerTable") trackerTable: ElementRef;

    public swapProjectsGroups() {
        this.trackerTable.nativeElement.scrollTo(0,0); //Error: Cannot read property 'scrollTo' of undefined
    }
}

但是我得Cannot read property 'scrollTo' of undefined,我错过了初始化nativeElement的东西吗?

达到此目的的angular2方式是什么?

2 个答案:

答案 0 :(得分:0)

我猜你不能用模板变量做到这一点。尝试将表格包装成一个组件然后

@ViewChild(YourComponent) _yourComponent: YourComponent;

请记住_yourComponent首先在ngAfterViewInit事件中可用。

答案 1 :(得分:0)

试试这个: @ViewChild("trackerTable") trackerTable: TableComponent;