angular - Angular:为什么排序只适用于第一个 Mat Table?
问题描述
为什么这里宣传的排序功能:https ://material.angular.io/components/table/overview#sorting
添加第二个表以显示数据的后半部分后立即失败?:
https://stackblitz.com/edit/angular-1vg9gn-q1back?file=app/table-basic-example.ts
我将如何解决它?
解决方案
MatSort
在您的代码中,您正在为您的数据源分配一个实例。该sort
成员将是MatSort
angular 可以在模板中找到的指令的第一个实例。
@ViewChild(MatSort) sort: MatSort; //1st sort directive
ngOnInit() {
this.dataSource.sort = this.sort;
}
由于您在 2 个表之间共享数据源,因此只使用第一个表。
您无法跨表共享数据源,以执行排序、过滤等操作。
解决方案是每个表有一个数据源。
推荐阅读
- python - 将字符串转换为由点分隔的数字,其中 a=1 和 z=26
- c# - 在 C# 中,是否可以强制将属性应用于实现指定接口的类?
- r - 使用 R:将矩阵转换为向量序列以实现阶函数的可变参数方法
- javascript - 如何从函数外部获取存储在函数中的变量?
- javascript - 我在哪里以及如何从 Electron 中的 React 加载组件?
- postgresql - 如何根据另一个选择类的结果值在选择类中添加条件
- google-apps-script - 我正在尝试调整脚本以将多个单元格“提交”到另一个工作表,该工作表在单元格 A5 中命名
- javascript - JavaScript将字符串中第一个破折号上的字符串拆分为2个值
- r - 从包括空向量的向量创建数据框
- javascript - 地图功能不读取组件