问题标签 [mat-table]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3165 浏览

css - 当它们包含输入时,mat-table 列的宽度不会改变

我正在尝试制作一个 Angular 组件来显示数据和接收数据。我制作了一个带有输入类型表单字段的 mat-table,并使用 {{element.value}} 显示常规数据。我设置了每列的宽度,如下所示:

我的问题是,当我使用输入模式时,列的宽度设置不正确。另一方面,输出模式正常工作,如下图所示: 两张桌子并排

我必须涵盖这些信息,但右侧是输入模式,第一列具有一种随机宽度,左侧是宽度设置正确的输出模式。

我的组件代码

我的组件的 CSS

如何在包含输入的表中设置第一列大小,就像另一列一样?

0 投票
1 回答
7884 浏览

css - Angular 6 - Ng-Container - Mat-table 内的 Ng-Template 不起作用

我正在从 API 将数据加载到 mat-table 数据源中。有一个 addnewrow() 方法可以在顶部添加一个新行。我实际上是在尝试使表格的第一列可编辑。(即)用户只有在创建新行时才能提供输入。表中的其余数据不应是可编辑的。因此,我默认使用局部标志变量 false 。基于标志,我正在ng-template使用ng-container.. 如果是新行,则第一列是唯一可编辑的列,否则它不应该是可编辑的。我不知道为什么这不起作用。

预期的:

  • 只有新添加行的第一列应该是可编辑的
  • 保存在本地存储中。

请检查最小的演示 - stackblitz,因为我没有权利分享实际的片段,我很抱歉。

请分享任何工作示例和实现目标的最佳方法。

片段

错误类型错误:无法读取未定义的属性“模板”

谢谢

0 投票
0 回答
68 浏览

angular - 为可变数据数组制作动态垫表

我正在构建一个简单的 angular webapp(仅限前端)。每次我的数组更改时,如何制作一个 mat-table 渲染

我的组件:

我找到了很多解决方案,但是旧版本的 angular 使用了已弃用的函数。想法是在更新数组以刷新表时获取回调

0 投票
1 回答
2120 浏览

angular - 使用 matSort 与 API 数据进行排序时出现问题

我的 mat-table 工作正常,但是在按照官方 api 文档添加 mat-sort 时,它在 ngAfterViewInit 失败并显示以下消息

错误类型错误:无法设置未定义的属性“排序”

第一个错误截图..没有排序

数据从 api 正确显示,我将代码移动到组件的构造函数中,仅在 onInit 中设置: this.listData.sort = this.sort;

我在 app.module 中导入了模块。

所以这是我的 3 个文件:

组件网.html

组件.ts

服务.ts:

当我写这个问题时,我找到了这个答案: https ://stackoverflow.com/a/53112864/11295075

我将此添加到 html 中: [hidden]="!listData.data" matSort

它变成了:<mat-table [dataSource]="listData" [hidden]="!listData.data" matSort>

现在,当我单击它时排序但不正确,这是控制台中的错误: 错误类型错误:无法读取未定义的属性“数据”

第二个错误

感谢您的帮助。

0 投票
1 回答
4332 浏览

angular - 我应该使用“

0 投票
1 回答
2635 浏览

angular - 如何在 mat-table 中选择一个单元格(Angular 7)

我正在使用有角度的材料mat-table来显示数据。好吧,当您单击一个单元格时,会显示一个输入字段并且隐藏跨度标签。

但就我而言,这一行中的每个单元格都显示一个输入字段,如您在屏幕截图中所见:

在此处输入图像描述

我的ngIf-Statement 如下所示:

显示跨度标签:!editable || (selectedRowIdx !== idx)

显示输入标签:可编辑 && (selectedRowIdx == idx)

我还能检查什么?也许定义一个ID标签?

0 投票
1 回答
4230 浏览

angular - 角度 6 中的可扩展行,具有角度材料,具有作为父行的确切列

我已经参与了带有可扩展行的角材料项目,并通过参考这里成功地制作了这些。但是我遇到了一些问题,因为我遵循的示例只有一列用于扩展行。所以我的问题是我可以使可扩展行具有与父行完全相同的列吗?如果可能的话,我可以提供一些示例/指南吗?

提前致谢。

我已经尝试在扩展行中创建一个表格,但问题是表格与父列对齐有点麻烦。我想如果我可以使用 mat-table 就像没有 [datasource] 的父列一样,因为我试图显示的数据已经在展开的行中。

假设表有 5 个父列,所以我希望扩展行也有 5 个列,它们遵循父列的宽度。

0 投票
2 回答
67 浏览

json - 如果 json 中的数组大于 1,则在新行上显示数据

我正在调用 Angular 中的 Api,并在 Angular 7 中的 mat-table 上显示数据。

响应是这样的

我在像这样的 Mat 表上显示这些数据

有没有可以指出的建议、链接或教程?我四处寻找,找不到任何东西。

谢谢

0 投票
1 回答
3883 浏览

angular - 角垫表列选择和取消选择

请通过链接https://stackblitz.com/edit/angular-primeng-table-order-resize-toggle?file=src%2Fapp%2Fapp.component.html根据我需要为 Angular Mat 表选择做的链接并取消选择列。

0 投票
1 回答
7496 浏览

angular - 从 mat-table 获取行 id 和输入值(角度)

我有一个包含几列的表,其中之一是输入。在表格下我有一个按钮,点击它我想更新数据库,一键更新所有用户的年龄。因此,对于通话,我需要每个用户的行 ID 和输入值。谁能解释一下怎么做?

TS

HTML