datatable - Uncaught Error : Template parse errors: Can't bind to 'dataSource' since it isn't a known property of 'table'

标签 datatable material-design angular6

您好,当我尝试添加 Material 数据表时,我发现了这个错误: Uncaught Error :模板解析错误: 无法绑定(bind)到“dataSource”,因为它不是“table”的已知属性。

 - my material version : "@angular/material": "^6.2.1"
 - my angular version : "@angular/core": "^6.0.5",

here is my module.ts

import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {MatButtonModule, MatCheckboxModule} from '@angular/material';
import { MatTableModule , MatSortModule } from "@angular/material";

here is my component.ts file

import {Component, OnInit, ViewChild} from '@angular/core';
import {MatSort, MatTableDataSource} from '@angular/material';

@Component({
  selector: 'app-government-index',
  templateUrl: './government-index.component.html',
  styleUrls: ['./government-index.component.scss']
})
export class GovernmentIndexComponent implements OnInit {
  displayedColumns = ['position', 'name', 'weight', 'symbol'];
  dataSource = new MatTableDataSource(ELEMENT_DATA);

  @ViewChild(MatSort) sort: MatSort;

  ngOnInit() {
    this.dataSource.sort = this.sort;
  }
}

export interface PeriodicElement {
  name: string;
  position: number;
  weight: number;
  symbol: string;
}

const ELEMENT_DATA: PeriodicElement[] = [
  {position: 1, name: 'Hydrogen', weight: 1.0079, symbol: 'H'},
  {position: 2, name: 'Helium', weight: 4.0026, symbol: 'He'},
  {position: 3, name: 'Lithium', weight: 6.941, symbol: 'Li'},
  {position: 4, name: 'Beryllium', weight: 9.0122, symbol: 'Be'},
  {position: 5, name: 'Boron', weight: 10.811, symbol: 'B'},
  {position: 6, name: 'Carbon', weight: 12.0107, symbol: 'C'},
  {position: 7, name: 'Nitrogen', weight: 14.0067, symbol: 'N'},
  {position: 8, name: 'Oxygen', weight: 15.9994, symbol: 'O'},
  {position: 9, name: 'Fluorine', weight: 18.9984, symbol: 'F'},
  {position: 10, name: 'Neon', weight: 20.1797, symbol: 'Ne'},
];

这是我尝试访问的链接:https://material.angular.io/components/table/overview

最佳答案

替换<table><mat-table #table>在您的 HTML 中。这将修复您的错误。

关于datatable - Uncaught Error : Template parse errors: Can't bind to 'dataSource' since it isn't a known property of 'table' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50913818/

相关文章:

android - 如何使 float 操作按钮滚出屏幕或消失

javascript - 警报脚本 : Cannot set property 'action' of undefined

php - 是否可以索引表的每一列?

angularjs - ng-change 函数在选择之前调用 on-load

javascript - 如何离线托管 Material Design 图标?

angular - “ng-select”不是已知元素

angular - 构建具有多个配置的应用程序

angular6 - 当我在获取数据后调度操作时无限循环/订阅

angular - primeng rowStyleClass 不能按预期工作

c# - 好的/简单的例子 asp :gridview describing all its functionalities?