【发布时间】:2018-10-21 14:50:31
【问题描述】:
export class Task implements ITask {
id:number;
name:string;
employees:number[];
}
export class Employee implements IEmployee {
id: number;
department_id: number;
first_name: string;
last_name: string;
birth_date: string;
}
apiEmployees:Employee[];
apiTasks:Task[];
//task of apiTasks
我想显示某个任务的员工的员工姓名。我设法做到了,但问题是它没有删除最后一个逗号,我不知道如何解决这个问题:
<span *ngFor="let employee of apiEmployees let isLastTaskEmployee=last">
<span *ngIf="task.employees.includes(employee.id) ">
{{employee.first_name}}
{{employee.last_name}}
{{isLastTaskEmployee
?'' : ', '}}
</span>
</span>
我想要一种不同的方法,因为这会创建很多隐藏的“跨度”标签,并且 isLastTask 不起作用,因为它会计算最后一个不可见和可见的“跨度”标签。
https://i.stack.imgur.com/V71vd.png
在这里您可以看到当最后一个可见跨度不是整个最后一个跨度时它如何不删除逗号。
附:请原谅我的标题可能令人困惑,这是我的第一个 StackOverflow 问题!
【问题讨论】:
-
也许带有 ngfor 的过滤器?但是我该怎么做呢?
-
你能显示isLastTaskEmployee的代码吗
-
isLastTaskEmployee没有代码,我都展示了,只在ngFor中使用,isLastTaskEmployee是ngfor数组的最后一个元素。它可以工作,但我有空的跨度,由于 ngIF 而没有显示,但它们仍然计入最后一个元素,所以最后一个元素有时是一个不可见的元素,因此它不会删除逗号。
标签: angular string formatting ngfor angular-ng-if