首页 > 解决方案 > 具有间隔的角度更新 matTableDatasource 将滚动到页面顶部

问题描述

我有一张垫子表,需要更新有关更改的信息。我设置了一个区间,在区间内我调用了一个方法,就像

updateMatTable(offset: number, size: number): void {

        offset = offset * size;

        /* GET DATA FROM REST SERVICE */

            this.dataSource = new MatTableDataSource(this.newTableData.dataRows);

        });

    }

似乎将 dataSource 等同于 newTableData仅当我们处于可以在 mat-table 下方(靠近页面底部)看到的滚动位置并且表格需要向下滚动时才会将滚动位置带到页面顶部

这是关于图书馆的一个错误,还是我错过了一些关于 mat-tables 的东西。

谢谢你的回答

标签: javascriptangularangular-materialmat-table

解决方案


好的,我在代码下添加了一个更改检测器,它的行为并不奇怪。我想要一个解释。

    updateMatTable(offset: number, size: number): void {
    
            offset = offset * size;
    
            /* GET DATA FROM REST SERVICE */
    
                this.dataSource = new MatTableDataSource(this.newTableData.dataRows);

                this.changeDetectorRef.detectChanges();
    
            });
    
        }

推荐阅读