上午使用角度6。
在客户列表页面中,我有3个按钮:“新建”,“编辑”,“查看”。它将渲染为1个组件。
因此,我需要确定单击了哪个按钮,以便根据其更改页面。
我将每一行作为参数传递。
component.html
<button mat-icon-button
matTooltip="Click to View"
(click)="viewCustomer(row)"
class="iconbutton"
color="primary">
<mat-icon>visibility</mat-icon>
</button>
<button mat-icon-button
matTooltip="Click to Edit"
(click)="editCustomer(row)"
class="iconbutton"
color="primary">
<mat-icon>edit</mat-icon>
</button>
通用组件
viewCustomer(customer) {
console.log(event.target);
this.service.populateForm(customer);
const dialogConfig = new MatDialogConfig();
// dialogConfig.disableClose = true;
dialogConfig.autoFocus = true;
dialogConfig.width = '60%';
this.dialog.open(CustomerComponent,dialogConfig);
}
答案 0 :(得分:1)
您可以像这样在click事件中简单地传递第二个参数:
(click)="viewCustomer(row,'view')"
(click)="viewCustomer(row,'edit')"
并检查组件ts文件中的条件
viewCustomer(row, type){
if(type=== 'view'){
//logic here
} else if(type === 'edit') {
//other logic here
}