我有一个垫表与垫排序头。在这个表中,每一行都有一个按钮,用户可以单击按钮,转到另一个页面(另一个组件),然后单击"返回"按钮并返回到表。
当用户返回到表,我需要表排序,如果用户做Mat排序。我想我可能必须保留按asc或desc排序的列的信息,以便我可以将排序设置回表。
类似:
<mat-table [dataSource]="dataSoruce" matSort (matSortChange)="sortChange($event)">
这是可能的吗?或者还有其他方法可以实现我的目标吗?谢谢你。
通常当你在组件之间导航时,原始状态将被破坏。为了保存组件的状态,在你的例子中是角材质表,你需要使用Redux或其他状态管理来保存状态。然后,您可以使用Table的排序头api来恢复状态。
https://material.angular.io/components/sort/overview
你只需要在组件中声明元素,就像你在下一行看到的那样:
@ViewChild(MatSort) sort: MatSort
然后你可以找到活动排序列在下一行
中看到this.sort.active