具有Angular Material Table的Angular Redux渲染缓慢

时间:2018-11-08 18:58:38

标签: angular redux angular7 angular-material-7

我目前正在使用Angular 7 Mat Table将数据呈现在表中。我还在Angular Store中使用Redux模式。我添加了其他功能,用户可以单击该行并展开它。我将课程加载到ngOnInit

this.store.dispatch(new courseActions.Load());

然后订阅商店中的更改

this.store.pipe(select(fromCourses.getCourses))
    .subscribe(courses => {
      this.dataSource = new MatTableDataSource(courses);
    })

打开行的动作

export class OpenRow implements Action {
    readonly type = CourseActionTypes.OpenRow; 
    constructor(public payload: ICourse) {}
}

ICourse上有一个show属性,当为false时,该行关闭,为true时,该行打开。现在的问题是,每次单击一行时重新呈现数据的速度都很慢(大约需要一秒钟,有700余行)。最初我没有使用redux模式,但由于应用程序的复杂性而决定这样做会更好,可以为每行数据执行多个http请求,应用程序的其他部分使用数据。我可以将这一方面与使用redux模式分开,但是有一些http调用可以操纵行中的数据,而这些调用需要重新呈现。

是否有一种更干净,更快捷的方法?

0 个答案:

没有答案