首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在没有标题行的情况下渲染Angular 9 mat表?

如何在没有标题行的情况下渲染Angular 9 mat表?
EN

Stack Overflow用户
提问于 2021-04-13 00:28:33
回答 3查看 2K关注 0票数 3

我使用的是Angular 9。我如何构造一个没有标题行(th)的mat- table?听起来很傻,但如果我这么做

代码语言:javascript
复制
<table mat-table *ngIf="isMobile" #mobile_table [dataSource]="dataSource">
  <ng-container matColumnDef="item">
    <td mat-cell *matCellDef="let item_stat">
      <div class="smallHeading">
        {{ item_stat.max_date }} m
      </div>
      <div class="mainRow divider">
        <a href="{{ item_stat.mobile_path }}">{{ item_stat.title }}</a> ·
        {{ getScore(item_stat) }}
      </div>
    </td>
  </ng-container>

  <tr mat-header-row *matHeaderRowDef="mobileDisplayedColumns"></tr>
  <tr mat-row *matRowDef="let row; columns: mobileDisplayedColumns;" [ngClass]="getRowClass(row)"></tr>
</table>

它会产生错误

代码语言:javascript
复制
ERROR TypeError: Cannot read property 'template' of undefined
    at MatHeaderRowDef.extractCellTemplate (table.js:567)
    at table.js:2522
    at Function.from (<anonymous>)
    at MatTable._getCellTemplates (table.js:2512)
    at MatTable._renderRow (table.js:2467)
    at table.js:2326
    at Array.forEach (<anonymous>)
    at MatTable._forceRenderHeaderRows (table.js:2321)
    at MatTable.ngAfterContentChecked (table.js:1800)
    at callHook (core.js:4730)

我必须补充一点

代码语言:javascript
复制
<th mat-header-cell *matHeaderCellDef></th>

以使表正确呈现。这似乎没有必要,因为我不想让我的表有一个标题行。我如何构建我的mat-table,以使这不是必需的?

EN

回答 3

Stack Overflow用户

发布于 2021-05-20 11:00:19

你只需要删除标题行mat- header -row *我就可以了。

票数 6
EN

Stack Overflow用户

发布于 2021-10-02 18:20:28

只需删除此行:

代码语言:javascript
复制
<tr mat-header-row *matHeaderRowDef="mobileDisplayedColumns"></tr>
票数 3
EN

Stack Overflow用户

发布于 2021-10-30 13:39:45

两种方式

删除<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>

在css组件上添加:host ::ng-deep thead{display: none;}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67062128

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档