Angular table 行按钮单击时 2 次管道更改
Angular 2 pipe change on button click for table rows
是否可以通过 change/put 管道在单击按钮时格式化 Angular 2 中的特定列?例如,我有一个包含 'Name' 和 'Hours' 列的 table,当我单击按钮时,'Hours' 显示的数据应转换为天数,反之亦然。
<button class="btn btn-secondary" (click)="convertToDays()">Days</button>
<button class="btn btn-secondary" (click)="convertToHours()">Hours</button>
<tbody>
<td>{{availableLeave.hours}}</td>
</tbody>
convertToDays(){
//put pipe to format availableLeave.hours to display as days ex.('48' hours should be displayed as '2' days)
}
convertToHours(){
//will just revert the original formatting of availableLeave.hours which is in hour format
}
根据您的要求,您可以直接在组件文件中使用 Pipe。
您可以制作两个管道,一个用于小时,一个用于天,然后调用所需管道的转换函数。
有关如何在组件或服务中使用管道的更多详细信息,
你可以像这样给管道传递一个参数
{{someValue | myPipe:param}}
<button class="btn btn-secondary" (click)="param = 'd'">Days</button>
<button class="btn btn-secondary" (click)="param = 'h'">Hours</button>
class MyPipe implements PipeTransform {
transform(value, param) {
if(param === 'h') {
return "...";
} else {
return "...";
}
}
}
是否可以通过 change/put 管道在单击按钮时格式化 Angular 2 中的特定列?例如,我有一个包含 'Name' 和 'Hours' 列的 table,当我单击按钮时,'Hours' 显示的数据应转换为天数,反之亦然。
<button class="btn btn-secondary" (click)="convertToDays()">Days</button>
<button class="btn btn-secondary" (click)="convertToHours()">Hours</button>
<tbody>
<td>{{availableLeave.hours}}</td>
</tbody>
convertToDays(){
//put pipe to format availableLeave.hours to display as days ex.('48' hours should be displayed as '2' days)
}
convertToHours(){
//will just revert the original formatting of availableLeave.hours which is in hour format
}
根据您的要求,您可以直接在组件文件中使用 Pipe。 您可以制作两个管道,一个用于小时,一个用于天,然后调用所需管道的转换函数。
有关如何在组件或服务中使用管道的更多详细信息,
你可以像这样给管道传递一个参数
{{someValue | myPipe:param}}
<button class="btn btn-secondary" (click)="param = 'd'">Days</button>
<button class="btn btn-secondary" (click)="param = 'h'">Hours</button>
class MyPipe implements PipeTransform {
transform(value, param) {
if(param === 'h') {
return "...";
} else {
return "...";
}
}
}