错误类型错误:无法设置未定义的属性“分页器”

2024-04-05

我正在使用表格角度材料创建表格 作为参考,我正在使用这个例子https://material.angular.io/components/table/examples https://material.angular.io/components/table/examples

这是我到目前为止所拥有的:

HTML

<mat-form-field>
    <input matInput (keyup)="applyFilter($event.target.value)" placeholder="Filter">
  </mat-form-field>

  <div class="mat-elevation-z8">
    <table mat-table [dataSource]="dataSource" matSort>


      <ng-container matColumnDef="name">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> Name </th>
        <td mat-cell *matCellDef="let row"> {{row.name}} </td>
      </ng-container>


      <ng-container matColumnDef="id">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> Id </th>
        <td mat-cell *matCellDef="let row"> {{row.id}} </td>
      </ng-container>


      <ng-container matColumnDef="release">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> Release</th>
        <td mat-cell *matCellDef="let row"> {{row.first_air_date}} </td>
      </ng-container>


      <ng-container matColumnDef="description">
        <th mat-header-cell *matHeaderCellDef mat-sort-header> Description </th>
        <td mat-cell *matCellDef="let row" [style.color]="row.color"> {{row.overview}} </td>
      </ng-container>

      <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
      <tr mat-row *matRowDef="let row; columns: displayedColumns;">
      </tr>
    </table>

    <mat-paginator [pageSizeOptions]="[5, 10, 25, 100]"></mat-paginator>
  </div>

组件.ts

import { Component, ViewChild, OnInit } from '@angular/core';
import { MoviesService } from '../movies.service';
import { MatPaginator, MatSort, MatTableDataSource } from '@angular/material';
import { DatatableComponent } from '@swimlane/ngx-datatable';

@Component({
  selector: 'app-tv-shows',
  templateUrl: './tv-shows.component.html',
  styleUrls: ['./tv-shows.component.scss']
})
export class TvShowsComponent implements OnInit {
  displayedColumns: string[] = ['name', 'id', 'release', 'description'];
  dataSource: any;
  @ViewChild(DatatableComponent) table: DatatableComponent;
  constructor(private moviesService: MoviesService) {
    this.moviesService.getPopularTVShows().subscribe(res => {
      this.dataSource = res.results;
    });
  }

  @ViewChild(MatPaginator) paginator: MatPaginator;
  @ViewChild(MatSort) sort: MatSort;

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

  applyFilter(filterValue: string) {
    this.dataSource.filter = filterValue.trim().toLowerCase();

    if (this.dataSource.paginator) {
      this.dataSource.paginator.firstPage();
    }
  }
}

当我运行我的应用程序时,数据完美地显示在表格中,但出现以下错误:

ERROR TypeError: Cannot set property 'paginator' of undefined

所以排序、过滤或分页都不起作用

我需要一些帮助:

我上面的代码做错了什么?任何帮助将不胜感激。


该错误表明您正在尝试分配this.dataSource.paginator when this.dataSource还是undefined。做作业after它已被初始化。

另外,当你想使用分页器、排序或过滤器时,你必须使用MatTableDataSource为它上课。仅使用原始数据作为您的数据是不够的dataSource:

ngOnInit() {
  this.moviesService.getPopularTVShows().subscribe(res => {
    // Use MatTableDataSource for paginator
    this.dataSource = new MatTableDataSource(res.results);
                          ^^^^^^^^^^^^^^^^^^
    // Assign the paginator *after* dataSource is set
    this.dataSource.paginator = this.paginator;
    this.dataSource.sort = this.sort;
  });
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

错误类型错误:无法设置未定义的属性“分页器” 的相关文章

  • XPATH 查询、HtmlAgilityPack 和提取文本

    我一直在尝试从名为 tim new 的类中提取链接 我也得到了解决方案 给出了解决方案 片段和必要的信息here https stackoverflow com questions 2982862 extracting a table ro
  • Ember.JS - 如何在同一页面中使用多个模型、控制器和视图?

    我主要了解 Ember JS 的基础知识 大多数示例实际上只处理单个控制器和模型以在页面上显示某些内容 我真的很想用 Ember 构建一个完整的 Web 应用程序 所以有人能告诉我如何组织和连接多个控制器 模型和视图到一个页面中吗 例如 如
  • 如何使用 jQuery 向表中添加新行,并为其分配递增的 id

    我有一个现有的 HTML 表格 它是用户输入 GPS 点的表单的一部分 用户还可以选择上传 GPS 数据点 我想要一个用户可以按下的按钮 其中一些 Javascript 会向表中添加一个或多个新行 但新行必须继续增加表中使用的名称和 id
  • 如何在 WordPress HTML 中包含“onclick”对象

    我正在尝试将 onclick 对象添加到触发事件的单站点 即而不是多站点 WordPress 中的页面 代码是 a href Send a voice message a 当尝试保存代码时 WordPress 会删除 onclick 对象
  • 使react-leaflet能够离线使用

    我一直在使用反应传单 https github com PaulLeCam react leaflet图书馆 到目前为止运作良好 现在我希望网站预加载尽可能多的图块 以便网络应用程序 也是 PWA 可以在没有互联网的情况下使用 我找到了一些
  • iframe 重新加载按钮

    我浏览了很多网站 但似乎没有一个能正常工作 或者我不明白它们 我想要一个刷新某个 iframe 的简单按钮 该按钮将位于父页面上 并且 iframe 名称为 Right 有很多方法可以做到这一点 假设这个iframe markup 我们可以
  • 在 Angular 材质表上调用 renderRows()

    我试图在更新表中使用的数据后刷新我的 Angular 表 文档说 您可以通过调用其 renderRows 方法来触发对表的渲染行的更新 但它不像普通的子组件 我可以使用 ViewChild MatSort sort MatSort 因为我不
  • 如何滚动到div内的元素?

    我有一个滚动的div我想在点击它时发生一个事件 它会强制执行此操作div滚动以查看内部元素 我写的JavasCript是这样的 document getElementById chr scrollIntoView true 但这会在滚动时滚
  • 使水平滚动条始终可见,即使底部不在视图中

    我将用一个片段来开始这个问题 该片段几乎显示了我想要完成的任务 wrapper overflow hidden display flex sidebar min width 200px background 333 color FFF co
  • 如何将 Browserify 与外部依赖项一起使用?

    我正在尝试慢慢地将 Browserify 引入我的网站 但我不想重写所有 js 也不希望 jquery 和其他库的重复实例与我的 Browserify 版本捆绑在一起 如果我构建将 jquery 列为外部依赖项的模块 那么如何将其指向我的全
  • React无限滚动scrollableTarget动态获取id?

    我在我的项目中使用react infinite scroll component 如何让scrollableTarget动态获取item id 我试过这样scrollableTarget item id 但它不起作用 必须与该 div 具有
  • 更改离子搜索栏的占位符和清晰图标颜色不是全局的吗?

    我有两个离子搜索栏 我只需要更改其中之一的占位符和清除图标颜色
  • 如何在 e2e AngularJS 测试中进行文件上传?

    在我的一种观点中 我有一个文件上传控件 它支持通过拖放或单击按钮后打开的标准文件对话框上传文件 How to do this in my e2e tests1 1 Just one of the two options will be en
  • WebRTC:通道、轨道和流与 RTP SSRC 和 RTP 会话之间的关系

    来自 Mozilla 网站 https developer mozilla org en US docs Web API Media Streams API https developer mozilla org en US docs We
  • 加载另一个 JS 脚本后加载

    这是我的代码 very big js file lots of html stuff 问题是 这些是异步加载的 有没有办法等待第二个脚本直到第一个脚本加载 如果您使用 jQuery 有一个非常简单的方法可以通过获取脚本 https api
  • ES6 模板文字的延迟执行

    我正在玩新的ES6 模板文字 http tc39wiki calculist org es6 template strings 我首先想到的是String format对于 JavaScript 所以我开始实现一个原型 String pro
  • 您如何看待引导模式触发器的相应回调?

    On 引导模态 http getbootstrap com javascript modals 我们知道我们可以为触发器绑定事件 例如show or hide using show shown hide hidden 但此事件绑定仅适用于一
  • 在javascript中动态生成行?

    我是 javascript 新手 我想在按下 Tab 时动态生成行 并希望获取在动态生成的行中输入的值 以便我可以在 servlet 代码中使用这些值 这是我的html
  • Typescript:如何定义生成可调用实例的类

    我目前正在将 JS 类转换为 TypeScript 该类扩展自 NPM 模块节点可调用实例 https www npmjs com package callable instance 这使得它在内部成为 Function 的子类 类的实例可
  • 如何更改订阅值?使用 rxJS

    我正在创建一个计时器 需要你的帮助 我刚刚学习 Angular 和 rxJS 对此我有一些疑问 我正在创建一个具有启动 停止 暂停 重置功能的计时器 并且 btn Reset 必须将我的计时器 暂停 到 300 毫秒 怎么做 D 我的启动定

随机推荐

  • 将 pandas 的宽变长

    假设我在 pandas 中有以下数据框 AA BB CC date 05 03 1 2 3 06 03 4 5 6 07 03 7 8 9 08 03 5 7 1 我想将其转换为以下内容 AA 05 03 1 AA 06 03 4 AA 0
  • 比较 C# 和 ColdFusion 之间的密码哈希值 (CFMX_COMPAT)

    我有一个密码哈希值存储在一个表中 并通过以下 Coldfusion 脚本放置在那里 Hash Encrypt Form UserPassword GetSiteVars EnCode 我正在尝试在 C 应用程序中添加一些外部功能 我希望能够
  • 将 php 变量发布到新窗口

    我有一个由数据库动态构建的页面 对于动态构建的每个内容 我希望有一个弹出新窗口的链接 并且该新窗口将根据单击第一页上的哪个项目来填充数据库中的列表 我尝试过 POST 方法并将变量发布到 url 我知道这是危险的 另一个独特之处是 单击的链
  • MATLAB 求最大值一个结构体的

    我试图找到结构的最大值但是max tracks matrix 不起作用 它给我以下错误 使用 horzcat 时出错 CAT 论证维度不一致 你有想法吗 这是我的结构的样子 tracks 1x110470 struct array with
  • Android Edittext光标不可见

    我的应用程序中有一个编辑文本 它将在 Froyo 或 Gingerbread 中正确显示光标 但是在更高版本的 sdks 中 光标是不可见的 我在网上找到的解决方案是设置 android textCursorDrawable null 以便
  • Powershell 中的 CDPATH 功能?

    有没有人实现了等效的行为bash 的 cdpath http www caliban org bash bashtips在 Powershell 中 以前不知道CDPATH 很高兴知道 我为 Powershell 编写了以下内容 funct
  • 以对数刻度显示刻度标签 MS 图表 (log-log)

    我在 Visual Studio 2015 C 中使用 MS Charts 创建了一个具有对数刻度 两个轴 的绘图 见图 我需要在 x 轴上添加更多网格线和相应的标签 我想在 1 2 3 4 和 10 之间以及 10 到 100 20 30
  • 对不受信任(自签名)HTTPS 的 AJAX 调用会默默失败

    我想对使用自签名证书的安全服务器进行 AJAX 调用 在使用我的应用程序的环境中 这很好 我可以向用户提供 CA 证书并让他们在使用应用程序之前安装它 但是 有时 用户会在安装证书之前尝试访问该应用程序 在这些情况下 应用程序会默默地失败
  • 如何将 React 应用程序部署到 Heroku

    我已经使用 React 和 Node js 构建了一个单页天气应用程序 但似乎无法将其部署到 Heroku 到目前为止 我有 在 Heroku 上创建了一个名为 Weather app react node 的新应用程序 在 CLI 上登录
  • 如何在Notepad++中将大写字母转换为小写字母

    我主要使用 Notepad 进行编码 如何将大写字母转换为小写字母 反之亦然 只需选择要更改的文本 右键单击并根据需要选择大写或小写
  • 将 PSD 格式转换为 Gimp 可以读取的格式的方法

    我有一堆 PSD 文件 还有更多 我想将它们转换成我可以使用的格式 我之前曾 一些 成功地使用 Gimp 读取 PSD 但这些文件无法正确读取 有没有办法将 PSD 转换为 XCF 我尝试过 IrfanView 它可以正常显示 PSD 但无
  • 如何在 Python 中将日期时间转换为 UTC 时间戳?

    From http docs python org library time html http docs python org library time html 时间 mktime t 这是 localtime 的反函数 它的论据是 s
  • 使用 numpy.genfromtxt 在 Python 3 中加载 UTF-8 文件

    我有一个从 WHO 网站下载的 CSV 文件 http apps who int gho data view main 52160 http apps who int gho data view main 52160 下载 CSV 格式的多
  • 如何使用 R 编辑或修改或更改大型文本文件中的单行

    我正在使用 R 将一些大型文本文件读入数据库 但它们包含数据库软件的非法字段名称 大型文本文件的列名仅在第一行中 是否可以仅编辑第一行而不循环遍历文件中的每一行 这似乎浪费资源 这是我尝试对一些示例数据执行的操作的两个示例 第一个将所有内容
  • 如何在 Laravel 中使用 SQL Server 连接?

    我有一个用 Laravel 3 制作的工作项目 我必须切换到 MsSQL Server 虽然不是我的电话 嗅探 但我不明白这种数据库类型的 Laravel 配置 我把里面默认的改了database php对此 default gt sqls
  • MPAndroidChart - 向条形图添加标签

    我的应用程序有必要在条形图的每个条形上都有一个标签 有没有办法用 MPAndroidChart 做到这一点 我在项目 wiki javadocs 上找不到执行此操作的方法 如果没有办法做到这一点 是否有其他软件可以让我做到这一点 更新答案
  • 使用四舍五入毫秒从时间戳获取格式化日期 Bash Shell 脚本

    我需要获取特定格式的日期 但不知道该怎么做 这是我目前获取日期的方法 date r timestamp Y m dT H M S s 然而问题是毫秒对于我需要的格式来说有太多数字 我需要将毫秒限制为 3 位数字 知道我该怎么做这样的事情吗
  • 如何使图像表现得像文件输入?

    单击默认照片时 用户应该从计算机中选择一个文件 而不是制作一个文件input type file 这使得用户首先单击浏览按钮而不是选择文件 用户应直接单击默认照片 然后会出现一个文件选择窗口
  • Objective-c:NSString 到枚举

    所以 我有这样的定义 typedef enum red 1 blue 2 white 3 car colors 然后 我有一个 car colors 类型的变量 car colors myCar 问题是 我在 NSString 中收到汽车的
  • 错误类型错误:无法设置未定义的属性“分页器”

    我正在使用表格角度材料创建表格 作为参考 我正在使用这个例子https material angular io components table examples https material angular io components t