Angular *ngIf未在垫台ng容器内工作
我使用Angular mat table创建一个包含三列的简单表格。在其中,当单击表中的任何行时,我需要隐藏2列。因此,我创建了一个click函数,并在单击行时将布尔变量设置为true 通过使用该布尔值,我在HTML文件中设置了Angular *ngIf未在垫台ng容器内工作,angular,angular-material-table,Angular,Angular Material Table,我使用Angular mat table创建一个包含三列的简单表格。在其中,当单击表中的任何行时,我需要隐藏2列。因此,我创建了一个click函数,并在单击行时将布尔变量设置为true 通过使用该布尔值,我在HTML文件中设置了*ngIf条件,以便在行单击时隐藏列。但是*ngIf在角垫表中不起作用 这是我的密码: HTML 甜点(100克) {{element.name} 卡路里 {{element.carries}} 脂肪(g) {{element.fat} 碳水化合物(克) {{eleme
*ngIf
条件,以便在行单击时隐藏列。但是*ngIf
在角垫表中不起作用
这是我的密码:
HTML
甜点(100克)
{{element.name}
卡路里
{{element.carries}}
脂肪(g)
{{element.fat}
碳水化合物(克)
{{element.carbs}}
TS
导出类sampleComponent实现OnInit{
公共行单击:布尔值=真;
构造函数(){}
ngOnInit():void{
}
公营机构(){
this.rowClick=false;
console.log(this.rowClick);
}
数据来源:食品[]=[
{名称:“酸奶”,卡路里:159,脂肪:6,碳水化合物:24},
{名称:'三明治',卡路里:237,脂肪:9,碳水化合物:37},
{name:'Eclairs',卡路里:262,脂肪:16,碳水化合物:24},
{名称:“纸杯蛋糕”,卡路里:305,脂肪:4,碳水化合物:67},
{名称:'姜饼',卡路里:356,脂肪:16,碳水化合物:49},
];
displayedColumns:string[]=['name','Carries','fat','carbs'];
}
您可以修改displayedColumns
变量来控制渲染哪些列,而不是使用*ngIf
指令。试试下面的方法
导出类sampleComponent实现OnInit{
...
displayedColumns:string[]=['name','Carries','fat','carbs'];
公营机构(){
this.displayedColumns=['name'];
}
公共重置(){
this.displayedColumns=['name','carries','fat','carbs'];
}
}
现在不需要使用
rowClick
boolean标志。那么,当我们需要调用reset按钮时,reset()在这里有什么用途。如果您希望再次显示所有列,您可以使用它。如果不需要,可以将其删除。是否可以使用此函数隐藏第一列标题名称?这里的列名是甜点,那么是否可以隐藏甜点呢?