angular - matSort 无法正常工作
问题描述
我在使用 mat-table 和排序数据时遇到问题,我找不到错误。
有一个stackblitz示例
https://stackblitz.com/edit/angular-lzhpvx
有人可以帮我看看错误吗?
解决方案
您的错误在于您的列模板和行模板键是大写的
displayedColumns = ['EMAIL','ID'];
^^^^^^^^^^^^^
<ng-container matColumnDef="EMAIL">
^^^^^^
而在你的数据数组键是小写的
const ELEMENT_DATA: TestEmail[] = [
{email: 'test1@test.com', id:4},
{email: 'aaaatest2@test.com', id: 7},
{email: 'oootest3@test.com', id: 1}
];
将具有该列名称的字符串分配给该
matColumnDef
指令。该指令使用键唯一标识给定列,它应该与为表提供数据的数据数组中定义的相同。
修改:
displayedColumns = ['email','id'];
<ng-container matColumnDef="email">
<ng-container matColumnDef="id">
现场
演示 您提供的STACKBLITZ使用最新版本的 Angular Material V6,并且您已将其与 Material V5 混合
推荐阅读
- python-3.x - 亚当优化器和梯度下降
- c - 在vs代码中在哪里添加-g标志进行调试
- javascript - 使用 Subject 和 Observable 有什么区别,各自的用途是什么?
- javascript - 关于使用 React styled-components 对类组件进行样式设置
- php - Magento 迁移后显示旧网站
- javascript - JavaScript 在预定时间倒计时
- ruby-on-rails - 在一类中访问 current_user
- eclipse - Payara ssl 证书和 Eclipse 控制台
- c++ - Visual Studio 2015 中每个新 cpp 文件中的默认代码
- javascript - PHP - how to display user inputs multiform before inserting to database