Я пытаюсь реализовать функциональность в mattable таким образом, чтобы был определен массив цветов, и каждый цвет случайно отображался на заднем плане каждой строки mattable. Я не уверен, как реализовать это, но я подумал, может быть, это можно сделать с помощью привязки стилей или что-то в этом роде. Я попытался использовать css, но это кажется очень плохой идеей, вот мой код mattable
<table mat-table [dataSource]="dataSource" class="mat-elevation-z8">
<!-- Checkbox Column -->
<ng-container matColumnDef="select">
<th mat-header-cell *matHeaderCellDef>
<mat-checkbox (change)="$event ? masterToggle() : null"
[checked]="selection.hasValue() && isAllSelected()"
[indeterminate]="selection.hasValue() && !isAllSelected()">
</mat-checkbox>
</th>
<td mat-cell *matCellDef="let row">
<mat-checkbox (click)="$event.stopPropagation()"
(change)="$event ? selection.toggle(row) : null"
[checked]="selection.isSelected(row)">
</mat-checkbox>
</td>
</ng-container>
<!-- Position Column -->
<ng-container matColumnDef="srNo">
<th mat-header-cell *matHeaderCellDef> No. </th>
<td mat-cell *matCellDef="let element; let i = index"> {{i + 1}} </td>
</ng-container>
<!-- Name Column -->
<ng-container matColumnDef="routes">
<th mat-header-cell *matHeaderCellDef> Routes </th>
<td mat-cell *matCellDef="let element"> {{element.name}} </td>
</ng-container>
<!-- Weight Column -->
<ng-container matColumnDef="percentage">
<th mat-header-cell *matHeaderCellDef> </th>
<td mat-cell *matCellDef="let element"><mat-progress-bar style="margin-top: 20px;" mode="determinate" value="{{element.percentage}}"></mat-progress-bar>
<div style="position:relative; top: -20px;">
{{ element.percentage }}%
</div>
</td>
</ng-container>
<!-- Symbol Column -->
<ng-container matColumnDef="capacity">
<th mat-header-cell *matHeaderCellDef style="text-align: center;"> Total Parcels </th>
<td mat-cell *matCellDef="let element" style="text-align: center;"> {{element.totalParcels}} </td>
</ng-container>
<ng-container matColumnDef="price">
<th mat-header-cell *matHeaderCellDef style="text-align: center;"> Total Price </th>
<td mat-cell *matCellDef="let element" style="text-align: center;"> {{element.totalPrice | currency: 'Rs.'}} </td>
</ng-container>
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns;"
(click)="selection.toggle(row)">
</tr>
</table>
css code
.mat-row:nth-child(even){
background-color:red;
}
.mat-row:nth-child(odd){
background-color: greenyellow;
}
Мне нужно знать, как я могу назначить случайный цвета для каждого ряда. Прямо сейчас у моего mattable есть только три ряда, и 1-й и 3-й ряд показывают зеленым желтым цветом, в то время как 2-й показывает красным цветом.