Это - самый близкий вопрос, который я мог найти к тому, что я спрашиваю, но они вручную применяют индекс и имеют несколько элементов, а я нет.
Есть ли способ изменить специфика c элемента class
в компоненте?
html
здесь я получаю идентификатор из выбранного элемента просто отлично, но я изменяю класс по клику, завершение задачи. Когда я нажимаю кнопку завершения, все задачи в l oop возвращаются завершенными. Я не уверен, как эффективно использовать i
здесь, потому что onclick Я также отправляю запрос на поставку, поэтому я не могу добавить больше информации в функцию, не отправляя также в базу данных, где она мне не нужна ...
<tr *ngFor="let task of tasks; let i = index;">
<button mat-button
class="btn"
[ngClass]="status ? 'btn-lemon-complete' : 'btn-lemon'"
[disabled]="status ? true : false"
(click)="completeTask(task._id)"
>{{ status ? 'Completed' : 'Complete Task' }}</button>
<button mat-button
class="btn delete"
*ngIf="status"
>✘</button>
компонент
completeTask(taskId, data): any {
this.status = true;
this.triggerService.updateTask(taskId, data).subscribe(res => {
});
let item = taskId;
let index = this.tasks.indexOf(taskId);
console.log(item, index, this.tasks);
}
console.log(item, index, this.tasks);
возвращает id, -1, [0{task here}1{task here}]
Я думаю, что я получаю -1
, потому что фактическое поле _id находится в позиции -1 единственной задачи, которую я нажимаю.
Как мне добиться того, что я пытаюсь? Спасибо.